Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
lwm1986
roslyn
提交
58897417
R
roslyn
项目概览
lwm1986
/
roslyn
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
roslyn
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
58897417
编写于
9月 10, 2015
作者:
C
Charles Stoner
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #5142 from cston/nuget-cleanup
Use async read for process output
上级
831d295e
432eb620
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
25 addition
and
13 deletion
+25
-13
src/Interactive/EditorFeatures/Core/Extensibility/Interactive/NuGetPackageResolverImpl.cs
...ore/Extensibility/Interactive/NuGetPackageResolverImpl.cs
+3
-12
src/Interactive/HostTest/NuGetPackageResolverTests.cs
src/Interactive/HostTest/NuGetPackageResolverTests.cs
+22
-1
未找到文件。
src/Interactive/EditorFeatures/Core/Extensibility/Interactive/NuGetPackageResolverImpl.cs
浏览文件 @
58897417
...
...
@@ -82,7 +82,6 @@ internal override ImmutableArray<string> ResolveNuGetPackage(string reference)
internal
static
bool
ParsePackageReference
(
string
reference
,
out
string
name
,
out
string
version
)
{
var
parts
=
reference
.
Split
(
'/'
);
int
n
=
reference
.
Length
;
if
((
parts
.
Length
==
2
)
&&
(
parts
[
0
].
Length
>
0
)
&&
(
parts
[
1
].
Length
>
0
))
...
...
@@ -187,17 +186,9 @@ private void NuGetRestore(string projectJsonPath)
private
static
void
NuGetRestore
(
ProcessStartInfo
startInfo
)
{
var
process
=
Process
.
Start
(
startInfo
);
string
line
;
var
reader
=
process
.
StandardOutput
;
while
((
line
=
reader
.
ReadLine
())
!=
null
)
{
// Should echo output to InteractiveWindow.
}
reader
=
process
.
StandardError
;
while
((
line
=
reader
.
ReadLine
())
!=
null
)
{
// Should echo errors to InteractiveWindow.
}
// Should echo output and errors to InteractiveWindow.
process
.
StandardOutput
.
ReadToEndAsync
();
process
.
StandardError
.
ReadToEndAsync
();
process
.
WaitForExit
();
}
}
...
...
src/Interactive/HostTest/NuGetPackageResolverTests.cs
浏览文件 @
58897417
...
...
@@ -4,7 +4,7 @@
using
Microsoft.CodeAnalysis.Test.Utilities
;
using
Roslyn.Test.Utilities
;
using
Roslyn.Utilities
;
using
System
.Collections.Immutable
;
using
System
;
using
System.IO
;
using
System.Text
;
using
Xunit
;
...
...
@@ -89,6 +89,27 @@ public void ResolveReference()
}
}
[
ConditionalFact
(
typeof
(
WindowsOnly
))]
public
void
HandledException
()
{
using
(
var
directory
=
new
DisposableDirectory
(
Temp
))
{
var
resolver
=
new
NuGetPackageResolverImpl
(
directory
.
Path
,
startInfo
=>
{
throw
new
IOException
();
});
var
actualPaths
=
resolver
.
ResolveNuGetPackage
(
"A.B.C/1.2"
);
Assert
.
True
(
actualPaths
.
IsDefault
);
}
}
[
ConditionalFact
(
typeof
(
WindowsOnly
))]
public
void
UnhandledException
()
{
using
(
var
directory
=
new
DisposableDirectory
(
Temp
))
{
var
resolver
=
new
NuGetPackageResolverImpl
(
directory
.
Path
,
startInfo
=>
{
throw
new
InvalidOperationException
();
});
Assert
.
Throws
<
InvalidOperationException
>(()
=>
resolver
.
ResolveNuGetPackage
(
"A.B.C/1.2"
));
}
}
[
ConditionalFact
(
typeof
(
WindowsOnly
))]
public
void
ParsePackageNameAndVersion
()
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录