Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
lwm1986
roslyn
提交
db536b0f
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,发现更多精彩内容 >>
提交
db536b0f
编写于
8月 05, 2015
作者:
M
Manish Vasani
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #4349 from mavasani/AnalyzerRegressionTests
Add regression tests for #4055
上级
8813f49a
2190ca1f
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
59 addition
and
0 deletion
+59
-0
src/Compilers/CSharp/Test/Semantic/Diagnostics/DiagnosticAnalyzerTests.cs
...harp/Test/Semantic/Diagnostics/DiagnosticAnalyzerTests.cs
+14
-0
src/EditorFeatures/Test2/Diagnostics/DiagnosticServiceTests.vb
...ditorFeatures/Test2/Diagnostics/DiagnosticServiceTests.vb
+38
-0
src/Test/Utilities/CommonDiagnosticAnalyzers.cs
src/Test/Utilities/CommonDiagnosticAnalyzers.cs
+7
-0
未找到文件。
src/Compilers/CSharp/Test/Semantic/Diagnostics/DiagnosticAnalyzerTests.cs
浏览文件 @
db536b0f
...
...
@@ -1105,6 +1105,20 @@ void Method()
TestGenericNameCore
(
source
,
new
AnalyzerWithNoActions
(),
new
CSharpGenericNameAnalyzer
());
}
[
Fact
,
WorkItem
(
4055
,
"https://github.com/dotnet/roslyn/issues/4055"
)]
public
void
TestAnalyzerWithNoSupportedDiagnostics
()
{
var
source
=
@"
class MyClass
{
}"
;
// Ensure that adding a dummy analyzer with no supported diagnostics doesn't bring down entire analysis.
var
analyzers
=
new
DiagnosticAnalyzer
[]
{
new
AnalyzerWithNoSupportedDiagnostics
()
};
CreateCompilationWithMscorlib45
(
source
)
.
VerifyDiagnostics
()
.
VerifyAnalyzerDiagnostics
(
analyzers
);
}
private
static
void
TestEffectiveSeverity
(
DiagnosticSeverity
defaultSeverity
,
ReportDiagnostic
expectedEffectiveSeverity
,
...
...
src/EditorFeatures/Test2/Diagnostics/DiagnosticServiceTests.vb
浏览文件 @
db536b0f
...
...
@@ -1685,5 +1685,43 @@ namespace ConsoleApplication1
' See https//github.com/dotnet/roslyn/issues/2980 for details.
TestGenericNameCore
(
test
,
CSharpGenericNameAnalyzer
.
Message
,
CSharpGenericNameAnalyzer
.
DiagnosticId
,
New
AnalyzerWithNoActions
,
New
CSharpGenericNameAnalyzer
)
End
Sub
<
Fact
,
WorkItem
(
4055
,
"https://github.com/dotnet/roslyn/issues/4055"
)
>
Public
Sub
TestAnalyzerWithNoSupportedDiagnostics
()
Dim
test
=
<
Workspace
>
<
Project
Language
=
"C#"
CommonReferences
=
"true"
>
<
Document
><
!
[
CDATA
[
class
MyClass
{
}
]]
>
</
Document
>
</
Project
>
</
Workspace
>
' Ensure that adding a dummy analyzer with no supported diagnostics doesn't bring down entire analysis.
Using
workspace
=
TestWorkspaceFactory
.
CreateWorkspace
(
test
)
Dim
project
=
workspace
.
CurrentSolution
.
Projects
.
Single
()
' Add analyzer
Dim
analyzer
=
New
AnalyzerWithNoSupportedDiagnostics
()
Dim
analyzerReference
=
New
AnalyzerImageReference
(
ImmutableArray
.
Create
(
Of
DiagnosticAnalyzer
)(
analyzer
))
project
=
project
.
AddAnalyzerReference
(
analyzerReference
)
Dim
diagnosticService
=
New
TestDiagnosticAnalyzerService
()
Dim
incrementalAnalyzer
=
diagnosticService
.
CreateIncrementalAnalyzer
(
workspace
)
' Verify available diagnostic descriptors/analyzers
Dim
descriptorsMap
=
diagnosticService
.
GetDiagnosticDescriptors
(
project
)
Assert
.
Equal
(
1
,
descriptorsMap
.
Count
)
Assert
.
Equal
(
0
,
descriptorsMap
.
First
().
Value
.
Length
)
Dim
document
=
project
.
Documents
.
Single
()
Dim
diagnostics
=
diagnosticService
.
GetDiagnosticsForSpanAsync
(
document
,
document
.
GetSyntaxRootAsync
().
WaitAndGetResult
(
CancellationToken
.
None
).
FullSpan
,
CancellationToken
.
None
).
WaitAndGetResult
(
CancellationToken
.
None
)
Assert
.
Equal
(
0
,
diagnostics
.
Count
())
End
Using
End
Sub
End
Class
End
Namespace
src/Test/Utilities/CommonDiagnosticAnalyzers.cs
浏览文件 @
db536b0f
...
...
@@ -291,6 +291,13 @@ public sealed class AnalyzerWithNoActions : DiagnosticAnalyzer
public
override
void
Initialize
(
AnalysisContext
context
)
{
}
}
[
DiagnosticAnalyzer
(
LanguageNames
.
CSharp
,
LanguageNames
.
VisualBasic
)]
public
sealed
class
AnalyzerWithNoSupportedDiagnostics
:
DiagnosticAnalyzer
{
public
override
ImmutableArray
<
DiagnosticDescriptor
>
SupportedDiagnostics
{
get
;
}
public
override
void
Initialize
(
AnalysisContext
context
)
{
}
}
[
DiagnosticAnalyzer
(
LanguageNames
.
CSharp
,
LanguageNames
.
VisualBasic
)]
public
sealed
class
AnalyzerThatThrowsInGetMessage
:
DiagnosticAnalyzer
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录