Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
lwm1986
roslyn
提交
ca4bd713
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,发现更多精彩内容 >>
未验证
提交
ca4bd713
编写于
3月 01, 2019
作者:
D
dotnet-automerge-bot
提交者:
GitHub
3月 01, 2019
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #33787 from dotnet/merges/dev16.0-to-master
Merge dev16.0 to master
上级
b34f4ad9
f3f3e657
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
22 addition
and
10 deletion
+22
-10
src/VisualStudio/IntegrationTest/TestSetup/TestExtensionErrorHandler.cs
...io/IntegrationTest/TestSetup/TestExtensionErrorHandler.cs
+11
-1
src/VisualStudio/IntegrationTest/TestUtilities/VisualStudioInstanceFactory.cs
...egrationTest/TestUtilities/VisualStudioInstanceFactory.cs
+11
-9
未找到文件。
src/VisualStudio/IntegrationTest/TestSetup/TestExtensionErrorHandler.cs
浏览文件 @
ca4bd713
...
...
@@ -12,6 +12,16 @@ namespace Microsoft.VisualStudio.IntegrationTest.Setup
public
class
TestExtensionErrorHandler
:
IExtensionErrorHandler
{
public
void
HandleError
(
object
sender
,
Exception
exception
)
=>
FatalError
.
Report
(
exception
);
{
if
(
exception
is
ArgumentOutOfRangeException
argumentOutOfRangeException
&&
argumentOutOfRangeException
.
ParamName
==
"index"
&&
argumentOutOfRangeException
.
StackTrace
.
Contains
(
"Microsoft.NodejsTools.Repl.ReplOutputClassifier.GetClassificationSpans"
))
{
// Known issue https://github.com/Microsoft/nodejstools/issues/2138
return
;
}
FatalError
.
Report
(
exception
);
}
}
}
src/VisualStudio/IntegrationTest/TestUtilities/VisualStudioInstanceFactory.cs
浏览文件 @
ca4bd713
...
...
@@ -35,22 +35,18 @@ public sealed class VisualStudioInstanceFactory : IDisposable
/// </summary>
private
static
bool
_firstLaunch
=
true
;
stat
ic
VisualStudioInstanceFactory
()
publ
ic
VisualStudioInstanceFactory
()
{
var
majorVsProductVersion
=
VsProductVersion
.
Split
(
'.'
)[
0
];
AppDomain
.
CurrentDomain
.
AssemblyResolve
+=
AssemblyResolveHandler
;
AppDomain
.
CurrentDomain
.
FirstChanceException
+=
FirstChanceExceptionHandler
;
var
majorVsProductVersion
=
VsProductVersion
.
Split
(
'.'
)[
0
];
if
(
int
.
Parse
(
majorVsProductVersion
)
<
15
)
{
throw
new
PlatformNotSupportedException
(
"The Visual Studio Integration Test Framework is only supported on Visual Studio 15.0 and later."
);
}
}
public
VisualStudioInstanceFactory
()
{
AppDomain
.
CurrentDomain
.
AssemblyResolve
+=
AssemblyResolveHandler
;
AppDomain
.
CurrentDomain
.
FirstChanceException
+=
FirstChanceExceptionHandler
;
}
private
static
void
FirstChanceExceptionHandler
(
object
sender
,
FirstChanceExceptionEventArgs
eventArgs
)
{
if
(
s_inHandler
)
...
...
@@ -77,7 +73,7 @@ private static void FirstChanceExceptionHandler(object sender, FirstChanceExcept
baseFileName
=
$"
{
DateTime
.
UtcNow
:
HH
.
mm
.
ss
}
-
{
testName
}
-
{
eventArgs
.
Exception
.
GetType
().
Name
}
"
;
}
ScreenshotService
.
TakeScreenshot
(
Path
.
Combine
(
logDir
,
$"
{
baseFileName
}
.png"
)
);
Directory
.
CreateDirectory
(
logDir
);
var
exception
=
eventArgs
.
Exception
;
File
.
WriteAllText
(
...
...
@@ -86,6 +82,8 @@ private static void FirstChanceExceptionHandler(object sender, FirstChanceExcept
EventLogCollector
.
TryWriteDotNetEntriesToFile
(
Path
.
Combine
(
logDir
,
$"
{
baseFileName
}
.DotNet.log"
));
EventLogCollector
.
TryWriteWatsonEntriesToFile
(
Path
.
Combine
(
logDir
,
$"
{
baseFileName
}
.Watson.log"
));
ScreenshotService
.
TakeScreenshot
(
Path
.
Combine
(
logDir
,
$"
{
baseFileName
}
.png"
));
}
finally
{
...
...
@@ -326,6 +324,10 @@ private static Process StartNewVisualStudioProcess(string installationPath, int
// Disable roaming settings to avoid interference from the online user profile
Process
.
Start
(
vsRegEditExeFile
,
$"set \"
{
installationPath
}
\"
{
Settings
.
Default
.
VsRootSuffix
}
HKCU \"ApplicationPrivateSettings\\Microsoft\\VisualStudio\" RoamingEnabled string \"1*System.Boolean*False\""
).
WaitForExit
();
// Disable text editor error reporting because it pops up a dialog. We want to either fail fast in our
// custom handler or fail silently and continue testing.
Process
.
Start
(
vsRegEditExeFile
,
$"set \"
{
installationPath
}
\"
{
Settings
.
Default
.
VsRootSuffix
}
HKCU \"Text Editor\" \"Report Exceptions\" dword 0"
).
WaitForExit
();
_firstLaunch
=
false
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录