Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
lwm1986
roslyn
提交
9cba5f0d
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,发现更多精彩内容 >>
提交
9cba5f0d
编写于
2月 12, 2015
作者:
J
Jared Parsons
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Added cancellation to the test runner
上级
3052f6fb
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
16 addition
and
5 deletion
+16
-5
src/EditorFeatures/Test/CodeFixes/ExtensionOrderingTests.cs
src/EditorFeatures/Test/CodeFixes/ExtensionOrderingTests.cs
+1
-0
src/Tools/Source/RunTests/Program.cs
src/Tools/Source/RunTests/Program.cs
+9
-1
src/Tools/Source/RunTests/TestRunner.cs
src/Tools/Source/RunTests/TestRunner.cs
+6
-4
未找到文件。
src/EditorFeatures/Test/CodeFixes/ExtensionOrderingTests.cs
浏览文件 @
9cba5f0d
...
...
@@ -8,6 +8,7 @@
using
Microsoft.CodeAnalysis.Shared.Extensions
;
using
Microsoft.CodeAnalysis.Shared.Utilities
;
using
Microsoft.VisualStudio.Composition
;
using
Roslyn.Test.Utilities
;
using
Xunit
;
namespace
Microsoft.CodeAnalysis.Editor.UnitTests.CodeFixes
...
...
src/Tools/Source/RunTests/Program.cs
浏览文件 @
9cba5f0d
...
...
@@ -5,6 +5,7 @@
using
System.IO
;
using
System.Linq
;
using
System.Text
;
using
System.Threading
;
using
System.Threading.Tasks
;
namespace
RunTests
...
...
@@ -39,10 +40,17 @@ internal static int Main(string[] args)
?
Path
.
Combine
(
xunitPath
,
"xunit.console.exe"
)
:
Path
.
Combine
(
xunitPath
,
"xunit.console.x86.exe"
);
// Setup cancellation for ctrl-c key presses
var
cts
=
new
CancellationTokenSource
();
Console
.
CancelKeyPress
+=
delegate
{
cts
.
Cancel
();
};
var
testRunner
=
new
TestRunner
(
xunit
);
var
start
=
DateTime
.
Now
;
Console
.
WriteLine
(
"Running {0} tests"
,
list
.
Count
);
var
result
=
testRunner
.
RunAll
(
list
).
Result
;
var
result
=
testRunner
.
RunAll
Async
(
list
,
cts
.
Token
).
Result
;
var
span
=
DateTime
.
Now
-
start
;
if
(!
result
)
{
...
...
src/Tools/Source/RunTests/TestRunner.cs
浏览文件 @
9cba5f0d
...
...
@@ -37,7 +37,7 @@ internal TestRunner(string xunitConsolePath)
_xunitConsolePath
=
xunitConsolePath
;
}
internal
async
Task
<
bool
>
RunAll
(
IEnumerable
<
string
>
assemblyList
)
internal
async
Task
<
bool
>
RunAll
Async
(
IEnumerable
<
string
>
assemblyList
,
CancellationToken
cancellationToken
)
{
var
max
=
Environment
.
ProcessorCount
;
var
allPassed
=
true
;
...
...
@@ -47,6 +47,8 @@ internal async Task<bool> RunAll(IEnumerable<string> assemblyList)
do
{
cancellationToken
.
ThrowIfCancellationRequested
();
var
i
=
0
;
while
(
i
<
running
.
Count
)
{
...
...
@@ -70,7 +72,7 @@ internal async Task<bool> RunAll(IEnumerable<string> assemblyList)
while
(
running
.
Count
<
max
&&
waiting
.
Count
>
0
)
{
var
task
=
RunTest
(
waiting
.
Pop
());
var
task
=
RunTest
(
waiting
.
Pop
()
,
cancellationToken
);
running
.
Add
(
task
);
}
...
...
@@ -102,7 +104,7 @@ private void Print(List<TestResult> testResults)
Console
.
WriteLine
(
"================"
);
}
private
async
Task
<
TestResult
>
RunTest
(
string
assemblyPath
)
private
async
Task
<
TestResult
>
RunTest
(
string
assemblyPath
,
CancellationToken
cancellationToken
)
{
var
assemblyName
=
Path
.
GetFileName
(
assemblyPath
);
var
resultsPath
=
Path
.
Combine
(
Path
.
GetDirectoryName
(
assemblyPath
),
Path
.
ChangeExtension
(
assemblyName
,
".html"
));
...
...
@@ -121,7 +123,7 @@ private async Task<TestResult> RunTest(string assemblyPath)
lowPriority
:
false
,
displayWindow
:
false
,
captureOutput
:
true
,
cancellationToken
:
CancellationToken
.
None
).
ConfigureAwait
(
false
);
cancellationToken
:
cancellationToken
).
ConfigureAwait
(
false
);
var
span
=
DateTime
.
UtcNow
-
start
;
if
(
processOutput
.
ExitCode
!=
0
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录