3313 references to ReportDiagnostic
AnalyzerRunner (2)
BuildActionTelemetryTable (27)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
CodeStyleConfigFileGenerator (6)
GenerateDocumentationAndConfigFiles (121)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
Metrics (121)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
Metrics.Legacy (121)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
Microsoft.AspNetCore.Analyzer.Testing (2)
Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation (7)
Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.Test (5)
Microsoft.CodeAnalysis (186)
Compilation\SyntaxTreeOptionsProvider.cs (7)
21public abstract bool TryGetDiagnosticValue(SyntaxTree tree, string diagnosticId, CancellationToken cancellationToken, out ReportDiagnostic severity);
26public abstract bool TryGetGlobalDiagnosticValue(string diagnosticId, CancellationToken cancellationToken, out ReportDiagnostic severity);
34public readonly ImmutableDictionary<string, ReportDiagnostic> DiagnosticOptions;
77public override bool TryGetDiagnosticValue(SyntaxTree tree, string diagnosticId, CancellationToken _, out ReportDiagnostic severity)
83severity = ReportDiagnostic.Default;
87public override bool TryGetGlobalDiagnosticValue(string diagnosticId, CancellationToken _, out ReportDiagnostic severity)
93severity = ReportDiagnostic.Default;
RuleSet\RuleSet.cs (53)
29private readonly ReportDiagnostic _generalDiagnosticOption;
33public ReportDiagnostic GeneralDiagnosticOption
38private readonly ImmutableDictionary<string, ReportDiagnostic> _specificDiagnosticOptions;
42public ImmutableDictionary<string, ReportDiagnostic> SpecificDiagnosticOptions
59public RuleSet(string filePath, ReportDiagnostic generalOption, ImmutableDictionary<string, ReportDiagnostic> specificOptions, ImmutableArray<RuleSetInclude> includes)
63_specificDiagnosticOptions = specificOptions == null ? ImmutableDictionary<string, ReportDiagnostic>.Empty : specificOptions;
70public RuleSet? WithEffectiveAction(ReportDiagnostic action)
79case ReportDiagnostic.Default:
81case ReportDiagnostic.Suppress:
83case ReportDiagnostic.Error:
84case ReportDiagnostic.Warn:
85case ReportDiagnostic.Info:
86case ReportDiagnostic.Hidden:
87var generalOption = _generalDiagnosticOption == ReportDiagnostic.Default ? ReportDiagnostic.Default : action;
91if (item.Value != ReportDiagnostic.Suppress && item.Value != ReportDiagnostic.Default)
107var effectiveGeneralOption = _generalDiagnosticOption;
108var effectiveSpecificOptions = new Dictionary<string, ReportDiagnostic>();
119if (ruleSetInclude.Action == ReportDiagnostic.Suppress)
157if (effectiveSpecificOptions.TryGetValue(item.Key, out var value))
225private static bool IsStricterThan(ReportDiagnostic action1, ReportDiagnostic action2)
229case ReportDiagnostic.Suppress:
231case ReportDiagnostic.Default:
232return action1 == ReportDiagnostic.Warn || action1 == ReportDiagnostic.Error || action1 == ReportDiagnostic.Info || action1 == ReportDiagnostic.Hidden;
233case ReportDiagnostic.Hidden:
234return action1 == ReportDiagnostic.Warn || action1 == ReportDiagnostic.Error || action1 == ReportDiagnostic.Info;
235case ReportDiagnostic.Info:
236return action1 == ReportDiagnostic.Warn || action1 == ReportDiagnostic.Error;
237case ReportDiagnostic.Warn:
238return action1 == ReportDiagnostic.Error;
239case ReportDiagnostic.Error:
280/// 1) A map of <paramref name="specificDiagnosticOptions"/> from rule ID to <see cref="ReportDiagnostic"/> option.
281/// 2) A global <see cref="ReportDiagnostic"/> option for all rules in the ruleset file.
283public static ReportDiagnostic GetDiagnosticOptionsFromRulesetFile(string? rulesetFileFullPath, out Dictionary<string, ReportDiagnostic> specificDiagnosticOptions)
288internal static ReportDiagnostic GetDiagnosticOptionsFromRulesetFile(string? rulesetFileFullPath, out Dictionary<string, ReportDiagnostic> diagnosticOptions, IList<Diagnostic>? diagnosticsOpt, CommonMessageProvider? messageProviderOpt)
290diagnosticOptions = new Dictionary<string, ReportDiagnostic>();
293return ReportDiagnostic.Default;
299private static ReportDiagnostic GetDiagnosticOptionsFromRulesetFile(Dictionary<string, ReportDiagnostic> diagnosticOptions, string resolvedPath, IList<Diagnostic>? diagnosticsOpt, CommonMessageProvider? messageProviderOpt)
303var generalDiagnosticOption = ReportDiagnostic.Default;
Microsoft.CodeAnalysis.Analyzers (121)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
Microsoft.CodeAnalysis.Analyzers.UnitTests (12)
Microsoft.CodeAnalysis.AnalyzerUtilities (121)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
Microsoft.CodeAnalysis.BannedApiAnalyzers (121)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
Microsoft.CodeAnalysis.CodeStyle (122)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
Microsoft.CodeAnalysis.CodeStyle.Fixes (7)
Microsoft.CodeAnalysis.CodeStyle.UnitTestUtilities (26)
Microsoft.CodeAnalysis.CSharp (104)
CommandLine\CSharpCommandLineParser.cs (20)
120var generalDiagnosticOption = ReportDiagnostic.Default;
121var diagnosticOptions = new Dictionary<string, ReportDiagnostic>();
122var noWarns = new Dictionary<string, ReportDiagnostic>();
123var warnAsErrors = new Dictionary<string, ReportDiagnostic>();
248AddWarnings(noWarns, ReportDiagnostic.Suppress, valueMemory.Value);
913generalDiagnosticOption = ReportDiagnostic.Error;
920if (diagnosticOptions[key] == ReportDiagnostic.Warn)
922warnAsErrors[key] = ReportDiagnostic.Error;
935AddWarnings(warnAsErrors, ReportDiagnostic.Error, valueMemory.Value);
942generalDiagnosticOption = ReportDiagnostic.Default;
960ReportDiagnostic ruleSetValue;
967warnAsErrors[id] = ReportDiagnostic.Default;
2140private static void AddWarnings(Dictionary<string, ReportDiagnostic> d, ReportDiagnostic kind, ReadOnlyMemory<char> warningArgument)
2146ReportDiagnostic existing;
2150if (existing != ReportDiagnostic.Suppress)
2185private static void AddDiagnostic(IList<Diagnostic> diagnostics, Dictionary<string, ReportDiagnostic> warningOptions, ErrorCode errorCode, params object[] arguments)
2188ReportDiagnostic value;
2190if (value != ReportDiagnostic.Suppress)
CSharpCompilationOptions.cs (22)
63ReportDiagnostic generalDiagnosticOption = ReportDiagnostic.Default,
65IEnumerable<KeyValuePair<string, ReportDiagnostic>>? specificDiagnosticOptions = null,
113ReportDiagnostic generalDiagnosticOption,
115IEnumerable<KeyValuePair<string, ReportDiagnostic>>? specificDiagnosticOptions,
158ReportDiagnostic generalDiagnosticOption,
160IEnumerable<KeyValuePair<string, ReportDiagnostic>>? specificDiagnosticOptions,
200ReportDiagnostic generalDiagnosticOption,
202IEnumerable<KeyValuePair<string, ReportDiagnostic>>? specificDiagnosticOptions,
443protected override CompilationOptions CommonWithGeneralDiagnosticOption(ReportDiagnostic value) => WithGeneralDiagnosticOption(value);
445protected override CompilationOptions CommonWithSpecificDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>? specificDiagnosticOptions) =>
448protected override CompilationOptions CommonWithSpecificDiagnosticOptions(IEnumerable<KeyValuePair<string, ReportDiagnostic>>? specificDiagnosticOptions) =>
454public new CSharpCompilationOptions WithGeneralDiagnosticOption(ReportDiagnostic value)
464public new CSharpCompilationOptions WithSpecificDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>? values)
468values = ImmutableDictionary<string, ReportDiagnostic>.Empty;
479public new CSharpCompilationOptions WithSpecificDiagnosticOptions(IEnumerable<KeyValuePair<string, ReportDiagnostic>>? values) =>
829ReportDiagnostic generalDiagnosticOption,
831IEnumerable<KeyValuePair<string, ReportDiagnostic>>? specificDiagnosticOptions,
868ReportDiagnostic generalDiagnosticOption,
870IEnumerable<KeyValuePair<string, ReportDiagnostic>>? specificDiagnosticOptions,
912ReportDiagnostic generalDiagnosticOption,
914IEnumerable<KeyValuePair<string, ReportDiagnostic>>? specificDiagnosticOptions,
Syntax\CSharpSyntaxTree.cs (6)
335ImmutableDictionary<string, ReportDiagnostic>? diagnosticOptions,
455ImmutableDictionary<string, ReportDiagnostic>? diagnosticOptions,
493ImmutableDictionary<string, ReportDiagnostic>? diagnosticOptions,
915ImmutableDictionary<string, ReportDiagnostic>? diagnosticOptions,
927ImmutableDictionary<string, ReportDiagnostic>? diagnosticOptions,
939ImmutableDictionary<string, ReportDiagnostic>? diagnosticOptions)
Microsoft.CodeAnalysis.CSharp.CodeStyle (24)
Microsoft.CodeAnalysis.CSharp.CodeStyle.UnitTests (4)
Microsoft.CodeAnalysis.CSharp.CommandLine.UnitTests (159)
CommandLineTests.cs (154)
308Assert.True(compilerTreeOptions.TryGetDiagnosticValue(tree, "cs0169", CancellationToken.None, out var severity));
309Assert.Equal(ReportDiagnostic.Suppress, severity);
311Assert.Equal(ReportDiagnostic.Suppress, severity);
2842Assert.True(parsedArgs.CompilationOptions.SpecificDiagnosticOptions["CA1012"] == ReportDiagnostic.Error);
2844Assert.True(parsedArgs.CompilationOptions.SpecificDiagnosticOptions["CA1013"] == ReportDiagnostic.Warn);
2846Assert.True(parsedArgs.CompilationOptions.SpecificDiagnosticOptions["CA1014"] == ReportDiagnostic.Suppress);
2847Assert.True(parsedArgs.CompilationOptions.GeneralDiagnosticOption == ReportDiagnostic.Warn);
3046Assert.Equal(actual: arguments.CompilationOptions.GeneralDiagnosticOption, expected: ReportDiagnostic.Error);
3078Assert.Equal(actual: arguments.CompilationOptions.GeneralDiagnosticOption, expected: ReportDiagnostic.Error);
3079Assert.Equal(actual: arguments.CompilationOptions.SpecificDiagnosticOptions["Test001"], expected: ReportDiagnostic.Error);
3111Assert.Equal(actual: arguments.CompilationOptions.GeneralDiagnosticOption, expected: ReportDiagnostic.Error);
3112Assert.Equal(actual: arguments.CompilationOptions.SpecificDiagnosticOptions["Test001"], expected: ReportDiagnostic.Info);
3144Assert.Equal(actual: arguments.CompilationOptions.GeneralDiagnosticOption, expected: ReportDiagnostic.Default);
3145Assert.Equal(actual: arguments.CompilationOptions.SpecificDiagnosticOptions["Test001"], expected: ReportDiagnostic.Error);
3178Assert.Equal(actual: arguments.CompilationOptions.GeneralDiagnosticOption, expected: ReportDiagnostic.Default);
3179Assert.Equal(actual: arguments.CompilationOptions.SpecificDiagnosticOptions["Test001"], expected: ReportDiagnostic.Warn);
3212Assert.Equal(actual: arguments.CompilationOptions.GeneralDiagnosticOption, expected: ReportDiagnostic.Error);
3213Assert.Equal(actual: arguments.CompilationOptions.SpecificDiagnosticOptions["Test001"], expected: ReportDiagnostic.Warn);
3246Assert.Equal(actual: arguments.CompilationOptions.GeneralDiagnosticOption, expected: ReportDiagnostic.Default);
3247Assert.Equal(actual: arguments.CompilationOptions.SpecificDiagnosticOptions["Test001"], expected: ReportDiagnostic.Warn);
3248Assert.Equal(actual: arguments.CompilationOptions.SpecificDiagnosticOptions["Test002"], expected: ReportDiagnostic.Default);
3280Assert.Equal(expected: ReportDiagnostic.Default, actual: arguments.CompilationOptions.GeneralDiagnosticOption);
3282Assert.Equal(expected: ReportDiagnostic.Suppress, actual: arguments.CompilationOptions.SpecificDiagnosticOptions["Test001"]);
3315Assert.Equal(expected: ReportDiagnostic.Error, actual: arguments.CompilationOptions.GeneralDiagnosticOption);
3317Assert.Equal(expected: ReportDiagnostic.Suppress, actual: arguments.CompilationOptions.SpecificDiagnosticOptions["Test001"]);
3350Assert.Equal(expected: ReportDiagnostic.Default, actual: arguments.CompilationOptions.GeneralDiagnosticOption);
3352Assert.Equal(expected: ReportDiagnostic.Suppress, actual: arguments.CompilationOptions.SpecificDiagnosticOptions["Test001"]);
3374Assert.Equal(expected: ReportDiagnostic.Default, actual: arguments.CompilationOptions.GeneralDiagnosticOption);
3379Assert.Equal(expected: ReportDiagnostic.Suppress, actual: arguments.CompilationOptions.SpecificDiagnosticOptions[warning]);
3382Assert.Equal(expected: ReportDiagnostic.Suppress,
3384Assert.Equal(expected: ReportDiagnostic.Suppress,
3407Assert.Equal(expected: ReportDiagnostic.Default, actual: arguments.CompilationOptions.GeneralDiagnosticOption);
3412Assert.Equal(expected: ReportDiagnostic.Suppress, actual: arguments.CompilationOptions.SpecificDiagnosticOptions[warning]);
3415Assert.Equal(expected: ReportDiagnostic.Suppress,
3417Assert.Equal(expected: ReportDiagnostic.Suppress,
3440Assert.Equal(expected: ReportDiagnostic.Default, actual: arguments.CompilationOptions.GeneralDiagnosticOption);
3445Assert.Equal(expected: ReportDiagnostic.Suppress, actual: arguments.CompilationOptions.SpecificDiagnosticOptions[warning]);
3448Assert.Equal(expected: ReportDiagnostic.Suppress, actual: arguments.CompilationOptions.SpecificDiagnosticOptions["Test001"]);
3449Assert.Equal(expected: ReportDiagnostic.Suppress,
3451Assert.Equal(expected: ReportDiagnostic.Suppress,
3474Assert.Equal(expected: ReportDiagnostic.Default, actual: arguments.CompilationOptions.GeneralDiagnosticOption);
3479Assert.Equal(expected: ReportDiagnostic.Error, actual: arguments.CompilationOptions.SpecificDiagnosticOptions[warning]);
3482Assert.Equal(expected: ReportDiagnostic.Error,
3484Assert.Equal(expected: ReportDiagnostic.Error,
5446private static void AssertSpecificDiagnostics(int[] expectedCodes, ReportDiagnostic[] expectedOptions, CSharpCommandLineArguments args)
5462Assert.Equal(ReportDiagnostic.Error, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5468Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5470AssertSpecificDiagnostics(new[] { 1062, 1066, 1734 }, new[] { ReportDiagnostic.Error, ReportDiagnostic.Error, ReportDiagnostic.Error }, parsedArgs);
5474Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5476AssertSpecificDiagnostics(new[] { 1062, 1066, 1734 }, new[] { ReportDiagnostic.Error, ReportDiagnostic.Error, ReportDiagnostic.Error }, parsedArgs);
5480Assert.Equal(ReportDiagnostic.Error, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5482AssertSpecificDiagnostics(new int[0], new ReportDiagnostic[0], parsedArgs);
5486Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5488AssertSpecificDiagnostics(new[] { 1062, 1066, 1734 }, new[] { ReportDiagnostic.Error, ReportDiagnostic.Error, ReportDiagnostic.Error }, parsedArgs);
5492Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5494AssertSpecificDiagnostics(new int[0], new ReportDiagnostic[0], parsedArgs);
5498Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5500AssertSpecificDiagnostics(new[] { 1062, 1066, 1734 }, new[] { ReportDiagnostic.Default, ReportDiagnostic.Default, ReportDiagnostic.Default }, parsedArgs);
5504Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5508new[] { ReportDiagnostic.Error, ReportDiagnostic.Error, ReportDiagnostic.Error, ReportDiagnostic.Default, ReportDiagnostic.Default },
5513Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5516AssertSpecificDiagnostics(new[] { 1062, 1066, 1734, 1974 }, new[] { ReportDiagnostic.Default, ReportDiagnostic.Error, ReportDiagnostic.Error, ReportDiagnostic.Default }, parsedArgs);
5520Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5522AssertSpecificDiagnostics(new[] { 1062, 1066, 1734, 1974 }, new[] { ReportDiagnostic.Error, ReportDiagnostic.Default, ReportDiagnostic.Default, ReportDiagnostic.Error }, parsedArgs);
5526Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5528AssertSpecificDiagnostics(new int[0], new ReportDiagnostic[0], parsedArgs);
5532Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5534AssertSpecificDiagnostics(new int[0], new ReportDiagnostic[0], parsedArgs);
5538Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5540AssertSpecificDiagnostics(new[] { 1062, 1974 }, new[] { ReportDiagnostic.Error, ReportDiagnostic.Error }, parsedArgs);
5544Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5546AssertSpecificDiagnostics(new[] { 1062, 1066, 1734 }, new[] { ReportDiagnostic.Suppress, ReportDiagnostic.Suppress, ReportDiagnostic.Suppress }, parsedArgs);
5550Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5552AssertSpecificDiagnostics(new[] { 1062, 1066, 1734 }, new[] { ReportDiagnostic.Suppress, ReportDiagnostic.Suppress, ReportDiagnostic.Suppress }, parsedArgs);
5556Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5558AssertSpecificDiagnostics(new[] { 1062, 1066, 1734, 1762 }, new[] { ReportDiagnostic.Suppress, ReportDiagnostic.Suppress, ReportDiagnostic.Suppress, ReportDiagnostic.Error }, parsedArgs);
5562Assert.Equal(ReportDiagnostic.Default, parsedArgs.CompilationOptions.GeneralDiagnosticOption);
5564AssertSpecificDiagnostics(new[] { 1062, 1066, 1734, 1762 }, new[] { ReportDiagnostic.Suppress, ReportDiagnostic.Suppress, ReportDiagnostic.Suppress, ReportDiagnostic.Error }, parsedArgs);
13164TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Error);
13167TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Suppress, noWarn: true);
13176TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Warn, rulesetText: rulesetText);
13183TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Warn);
13190TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Warn);
13197TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Warn);
13204TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Warn);
13210TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, warnAsError: true, expectedDiagnosticSeverity: ReportDiagnostic.Error);
13217TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Suppress);
13224TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Suppress);
13231TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText: string.Empty, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Suppress);
13237TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Suppress);
13243TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Suppress);
13265var defaultReportDiagnostic = DiagnosticDescriptor.MapSeverityToReport(defaultSeverity);
13266var expectedDiagnosticSeverity = customConfigurable ? defaultReportDiagnostic : ReportDiagnostic.Error;
13273TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Suppress, noWarn: true);
13282TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Warn, rulesetText: rulesetText);
13286expectedDiagnosticSeverity = customConfigurable ? defaultReportDiagnostic : ReportDiagnostic.Warn;
13303expectedDiagnosticSeverity = customConfigurable && defaultReportDiagnostic != ReportDiagnostic.Warn ? defaultReportDiagnostic : ReportDiagnostic.Error;
13312expectedDiagnosticSeverity = customConfigurable ? defaultReportDiagnostic : ReportDiagnostic.Suppress;
13323expectedDiagnosticSeverity = customConfigurable ? defaultReportDiagnostic : ReportDiagnostic.Suppress;
13329expectedDiagnosticSeverity = customConfigurable ? defaultReportDiagnostic : ReportDiagnostic.Suppress;
13355TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Error);
13362TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Error);
13370TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Warn);
13383TestBulkAnalyzerConfigurationCore(analyzer, analyzerConfigText, errorlog, expectedDiagnosticSeverity: ReportDiagnostic.Warn, rulesetText);
13390ReportDiagnostic expectedDiagnosticSeverity,
13435var expectedErrorCode = expectedDiagnosticSeverity == ReportDiagnostic.Error ? 1 : 0;
13440ReportDiagnostic.Error => "error",
13441ReportDiagnostic.Warn => "warning",
13442ReportDiagnostic.Info => errorlog ? "info" : null,
13443ReportDiagnostic.Hidden => null,
13444ReportDiagnostic.Suppress => null,
13623public void AnalyzerConfigRespectedForNoLocationDiagnostic(ReportDiagnostic reportDiagnostic, bool isEnabledByDefault, bool noWarn, bool errorlog)
13632public void AnalyzerConfigRespectedForDisabledByDefaultDiagnostic(ReportDiagnostic analyzerConfigSeverity, bool isEnabledByDefault, bool noWarn, bool errorlog, bool customConfigurable)
13638private void TestAnalyzerConfigRespectedCore(DiagnosticAnalyzer analyzer, DiagnosticDescriptor descriptor, ReportDiagnostic analyzerConfigSeverity, bool noWarn, bool errorlog, bool customConfigurable)
13640if (analyzerConfigSeverity == ReportDiagnostic.Default)
13680var expectedErrorCode = !noWarn && analyzerConfigSeverity == ReportDiagnostic.Error ? 1 : 0;
13685(analyzerConfigSeverity == ReportDiagnostic.Error ||
13686analyzerConfigSeverity == ReportDiagnostic.Warn ||
13687(analyzerConfigSeverity == ReportDiagnostic.Info && errorlog)))
13689var prefix = analyzerConfigSeverity == ReportDiagnostic.Error ? "error" : analyzerConfigSeverity == ReportDiagnostic.Warn ? "warning" : "info";
15662var comp = CreateCompilation(src, options: TestOptions.DebugExe.WithGeneralDiagnosticOption(ReportDiagnostic.Suppress));
15798var comp = CreateCompilation(src, options: TestOptions.DebugExe.WithGeneralDiagnosticOption(ReportDiagnostic.Suppress));
SarifV2ErrorLoggerTests.cs (5)
377(AnalyzerForErrorLogTest.Descriptor1.Id, 0, ImmutableHashSet.Create(ReportDiagnostic.Error))));
498(AnalyzerForErrorLogTest.Descriptor1.Id, 0, ImmutableHashSet.Create(ReportDiagnostic.Suppress)),
499(AnalyzerForErrorLogTest.Descriptor2.Id, 1, ImmutableHashSet.Create(ReportDiagnostic.Suppress))));
580(AnalyzerForErrorLogTest.Descriptor1.Id, 0, ImmutableHashSet.Create(ReportDiagnostic.Suppress, ReportDiagnostic.Warn))));
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (22)
EditorConfigSettings\Updater\SettingsUpdaterTests.cs (17)
72private static async Task TestAsync(string initialEditorConfig, string updatedEditorConfig, params (AnalyzerSetting, ReportDiagnostic)[] options)
109[CombinatorialValues(ReportDiagnostic.Warn, ReportDiagnostic.Error, ReportDiagnostic.Info, ReportDiagnostic.Hidden, ReportDiagnostic.Suppress)]
110ReportDiagnostic severity)
130var analyzerSetting = new AnalyzerSetting(descriptor, ReportDiagnostic.Suppress, null!, language, new SettingLocation(EditorConfigSettings.LocationKind.VisualStudio, null));
317var analyzerSetting = new AnalyzerSetting(descriptor, ReportDiagnostic.Suppress, updater, Language.CSharp, new SettingLocation(EditorConfigSettings.LocationKind.VisualStudio, null));
318analyzerSetting.ChangeSeverity(ReportDiagnostic.Error);
341setting.ChangeSeverity(ReportDiagnostic.Error);
395setting0.ChangeSeverity(ReportDiagnostic.Error);
400Assert.Equal(ReportDiagnostic.Error, setting0.Severity);
402setting1.ChangeSeverity(ReportDiagnostic.Error);
403setting2.ChangeSeverity(ReportDiagnostic.Error);
408Assert.Equal(ReportDiagnostic.Error, setting0.Severity);
409Assert.Equal(ReportDiagnostic.Error, setting0.Severity);
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (12)
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (1)
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (112)
Attributes\AttributeTests_WellKnownAttributes.cs (16)
8787verify(TestOptions.DebugDll.WithGeneralDiagnosticOption(ReportDiagnostic.Warn),
8793verify(TestOptions.DebugDll.WithGeneralDiagnosticOption(ReportDiagnostic.Error),
8799verify(TestOptions.DebugDll.WithGeneralDiagnosticOption(ReportDiagnostic.Hidden),
8804verify(TestOptions.DebugDll.WithGeneralDiagnosticOption(ReportDiagnostic.Suppress));
8807verify(TestOptions.DebugDll.WithSpecificDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>.Empty.Add("TEST1", ReportDiagnostic.Warn)),
8813verify(TestOptions.DebugDll.WithSpecificDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>.Empty.Add("TEST1", ReportDiagnostic.Error)),
8819verify(TestOptions.DebugDll.WithSpecificDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>.Empty.Add("TEST1", ReportDiagnostic.Hidden)),
8825verify(TestOptions.DebugDll.WithSpecificDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>.Empty.Add("TEST1", ReportDiagnostic.Suppress)));
8828verify(TestOptions.DebugDll.WithSpecificDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>.Empty.Add("CS0618", ReportDiagnostic.Error)),
8834verify(TestOptions.DebugDll.WithSpecificDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>.Empty.Add("CS0618", ReportDiagnostic.Suppress)),
Diagnostics\DiagnosticAnalyzerTests.cs (79)
146new[] { KeyValuePair.Create("CA9999_UseOfVariableThatStartsWithX", ReportDiagnostic.Suppress) });
169new[] { KeyValuePair.Create("CA9999_UseOfVariableThatStartsWithX", ReportDiagnostic.Error) });
201var options = TestOptions.ReleaseDll.WithGeneralDiagnosticOption(ReportDiagnostic.Error);
287var options = TestOptions.ReleaseDll.WithGeneralDiagnosticOption(ReportDiagnostic.Error);
317var specificDiagOptions = new Dictionary<string, ReportDiagnostic>();
318specificDiagOptions.Add(noneDiagDescriptor.Id, ReportDiagnostic.Error);
319specificDiagOptions.Add(infoDiagDescriptor.Id, ReportDiagnostic.Error);
320specificDiagOptions.Add(warningDiagDescriptor.Id, ReportDiagnostic.Error);
332specificDiagOptions = new Dictionary<string, ReportDiagnostic>();
333specificDiagOptions.Add(noneDiagDescriptor.Id, ReportDiagnostic.Suppress);
334specificDiagOptions.Add(infoDiagDescriptor.Id, ReportDiagnostic.Suppress);
335specificDiagOptions.Add(warningDiagDescriptor.Id, ReportDiagnostic.Suppress);
336specificDiagOptions.Add(errorDiagDescriptor.Id, ReportDiagnostic.Suppress);
344specificDiagOptions = new Dictionary<string, ReportDiagnostic>();
345specificDiagOptions.Add(noneDiagDescriptor.Id, ReportDiagnostic.Info);
346specificDiagOptions.Add(infoDiagDescriptor.Id, ReportDiagnostic.Hidden);
347specificDiagOptions.Add(warningDiagDescriptor.Id, ReportDiagnostic.Error);
348specificDiagOptions.Add(errorDiagDescriptor.Id, ReportDiagnostic.Warn);
400var options = TestOptions.ReleaseDll.WithGeneralDiagnosticOption(ReportDiagnostic.Default);
405options = TestOptions.ReleaseDll.WithGeneralDiagnosticOption(ReportDiagnostic.Error);
411options = TestOptions.ReleaseDll.WithGeneralDiagnosticOption(ReportDiagnostic.Warn);
418options = TestOptions.ReleaseDll.WithGeneralDiagnosticOption(ReportDiagnostic.Info);
425options = TestOptions.ReleaseDll.WithGeneralDiagnosticOption(ReportDiagnostic.Hidden);
432options = TestOptions.ReleaseDll.WithGeneralDiagnosticOption(ReportDiagnostic.Suppress);
459var specificDiagOptions = new Dictionary<string, ReportDiagnostic>();
460specificDiagOptions.Add(disabledDiagDescriptor.Id, ReportDiagnostic.Warn);
461specificDiagOptions.Add(enabledDiagDescriptor.Id, ReportDiagnostic.Suppress);
531var specificDiagOptions = new Dictionary<string, ReportDiagnostic>();
532specificDiagOptions.Add(FullyDisabledAnalyzer.desc1.Id, ReportDiagnostic.Warn);
533specificDiagOptions.Add(PartiallyDisabledAnalyzer.desc2.Id, ReportDiagnostic.Suppress);
540specificDiagOptions = new Dictionary<string, ReportDiagnostic>();
541specificDiagOptions.Add(FullyDisabledAnalyzer.desc3.Id, ReportDiagnostic.Warn);
1141var specificDiagOptions = new Dictionary<string, ReportDiagnostic>();
1142specificDiagOptions.Add(NotConfigurableDiagnosticAnalyzer.EnabledRule.Id, ReportDiagnostic.Suppress);
1151specificDiagOptions.Add(NotConfigurableDiagnosticAnalyzer.DisabledRule.Id, ReportDiagnostic.Warn);
1278ReportDiagnostic expectedEffectiveSeverity,
1279Dictionary<string, ReportDiagnostic> specificOptions = null,
1280ReportDiagnostic generalOption = ReportDiagnostic.Default,
1283specificOptions = specificOptions ?? new Dictionary<string, ReportDiagnostic>();
1286var effectiveSeverity = descriptor.GetEffectiveSeverity(options);
1295TestEffectiveSeverity(DiagnosticSeverity.Warning, ReportDiagnostic.Warn);
1303var specificOptions = new Dictionary<string, ReportDiagnostic>() { { "Test0001", ReportDiagnostic.Default } };
1304var generalOption = ReportDiagnostic.Error;
1306TestEffectiveSeverity(DiagnosticSeverity.Warning, expectedEffectiveSeverity: ReportDiagnostic.Warn, specificOptions: specificOptions, generalOption: generalOption);
1314var generalOption = ReportDiagnostic.Error;
1323var specificOption = ReportDiagnostic.Suppress;
1324var specificOptions = new Dictionary<string, ReportDiagnostic>() { { "Test0001", specificOption } };
1325var generalOption = ReportDiagnostic.Error;
1335var generalOption = ReportDiagnostic.Error;
1338TestEffectiveSeverity(DiagnosticSeverity.Warning, expectedEffectiveSeverity: ReportDiagnostic.Suppress, generalOption: generalOption, isEnabledByDefault: enabledByDefault);
1346var specificOption = ReportDiagnostic.Warn;
1347var specificOptions = new Dictionary<string, ReportDiagnostic>() { { "Test0001", specificOption } };
1348var generalOption = ReportDiagnostic.Error;
1553var options = compilation.Options.WithGeneralDiagnosticOption(ReportDiagnostic.Error);
1831if (compilation.Options.GeneralDiagnosticOption == ReportDiagnostic.Error)
3387new TestSyntaxTreeOptionsProvider(tree2, (NamedTypeAnalyzer.RuleId, ReportDiagnostic.Suppress)));
3430new TestSyntaxTreeOptionsProvider(tree2, (NamedTypeAnalyzer.RuleId, ReportDiagnostic.Suppress))
3482new TestSyntaxTreeOptionsProvider(tree2, (NamedTypeAnalyzer.RuleId, ReportDiagnostic.Suppress))
3534new TestSyntaxTreeOptionsProvider((NamedTypeAnalyzer.RuleId, ReportDiagnostic.Suppress)));
3555new TestSyntaxTreeOptionsProvider((NamedTypeAnalyzer.RuleId, ReportDiagnostic.Suppress), (tree1, new[] { (NamedTypeAnalyzer.RuleId, ReportDiagnostic.Default) })));
4186new TestSyntaxTreeOptionsProvider(tree1, (AnalyzerWithDisabledRules.Rule.Id, ReportDiagnostic.Warn)));
4196.WithSpecificDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>.Empty.Add(AnalyzerWithDisabledRules.Rule.Id, ReportDiagnostic.Warn))
4198(tree2, new[] { (AnalyzerWithDisabledRules.Rule.Id, ReportDiagnostic.Suppress) }),
4199(tree3, new[] { (AnalyzerWithDisabledRules.Rule.Id, ReportDiagnostic.Suppress) })));
4272public override bool TryGetDiagnosticValue(SyntaxTree tree, string diagnosticId, CancellationToken cancellationToken, out ReportDiagnostic severity)
4275severity = ReportDiagnostic.Default;
4279public override bool TryGetGlobalDiagnosticValue(string diagnosticId, CancellationToken cancellationToken, out ReportDiagnostic severity)
4282severity = ReportDiagnostic.Default;
Microsoft.CodeAnalysis.CSharp.Features (33)
Microsoft.CodeAnalysis.CSharp.Features.UnitTests (14)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (117)
Semantics\NullableReferenceTypesTests.cs (102)
6364var comp2 = CreateCompilation(source, options: TestOptions.DebugDll.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Suppress));
125179foreach (ReportDiagnostic option in Enum.GetValues(typeof(ReportDiagnostic)))
125204comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default));
125213comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithGeneralDiagnosticOption(ReportDiagnostic.Default));
125223WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default).
125224WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125233comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Error));
125243WithSpecificDiagnosticOptions(id, ReportDiagnostic.Error).
125244WithGeneralDiagnosticOption(ReportDiagnostic.Default));
125254WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125264WithSpecificDiagnosticOptions(id, ReportDiagnostic.Suppress));
125269WithSpecificDiagnosticOptions(id, ReportDiagnostic.Suppress).
125270WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125275WithGeneralDiagnosticOption(ReportDiagnostic.Suppress));
125279comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Hidden));
125289WithSpecificDiagnosticOptions(id, ReportDiagnostic.Hidden).
125290WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125300WithGeneralDiagnosticOption(ReportDiagnostic.Hidden));
125310WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default).
125311WithGeneralDiagnosticOption(ReportDiagnostic.Hidden));
125362foreach (ReportDiagnostic option in Enum.GetValues(typeof(ReportDiagnostic)))
125383comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithSpecificDiagnosticOptions(id1, id2, ReportDiagnostic.Default));
125386comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithGeneralDiagnosticOption(ReportDiagnostic.Default));
125390WithSpecificDiagnosticOptions(id1, id2, ReportDiagnostic.Default).
125391WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125394comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithSpecificDiagnosticOptions(id1, id2, ReportDiagnostic.Error));
125398WithSpecificDiagnosticOptions(id1, id2, ReportDiagnostic.Error).
125399WithGeneralDiagnosticOption(ReportDiagnostic.Default));
125403WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125407WithSpecificDiagnosticOptions(id1, id2, ReportDiagnostic.Suppress));
125411WithSpecificDiagnosticOptions(id1, id2, ReportDiagnostic.Suppress).
125412WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125416WithGeneralDiagnosticOption(ReportDiagnostic.Suppress));
125419comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithSpecificDiagnosticOptions(id1, id2, ReportDiagnostic.Hidden));
125423WithSpecificDiagnosticOptions(id1, id2, ReportDiagnostic.Hidden).
125424WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125428WithGeneralDiagnosticOption(ReportDiagnostic.Hidden));
125432WithSpecificDiagnosticOptions(id1, id2, ReportDiagnostic.Default).
125433WithGeneralDiagnosticOption(ReportDiagnostic.Hidden));
125539comp = CreateCompilation(new[] { source, source2 }, options: options.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default));
125548comp = CreateCompilation(new[] { source, source2 }, options: options.WithGeneralDiagnosticOption(ReportDiagnostic.Default));
125558WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default).
125559WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125568comp = CreateCompilation(new[] { source, source2 }, options: options.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Error));
125578WithSpecificDiagnosticOptions(id, ReportDiagnostic.Error).
125579WithGeneralDiagnosticOption(ReportDiagnostic.Default));
125589WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125599WithSpecificDiagnosticOptions(id, ReportDiagnostic.Suppress));
125604WithSpecificDiagnosticOptions(id, ReportDiagnostic.Suppress).
125605WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125610WithGeneralDiagnosticOption(ReportDiagnostic.Suppress));
125614comp = CreateCompilation(new[] { source, source2 }, options: options.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Hidden));
125624WithSpecificDiagnosticOptions(id, ReportDiagnostic.Hidden).
125625WithGeneralDiagnosticOption(ReportDiagnostic.Error));
125635WithGeneralDiagnosticOption(ReportDiagnostic.Hidden));
125645WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default).
125646WithGeneralDiagnosticOption(ReportDiagnostic.Hidden));
126073comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default));
126077comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithGeneralDiagnosticOption(ReportDiagnostic.Default));
126082WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default).
126083WithGeneralDiagnosticOption(ReportDiagnostic.Error));
126087comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Error));
126092WithSpecificDiagnosticOptions(id, ReportDiagnostic.Error).
126093WithGeneralDiagnosticOption(ReportDiagnostic.Default));
126098WithGeneralDiagnosticOption(ReportDiagnostic.Error));
126103WithSpecificDiagnosticOptions(id, ReportDiagnostic.Suppress));
126108WithSpecificDiagnosticOptions(id, ReportDiagnostic.Suppress).
126109WithGeneralDiagnosticOption(ReportDiagnostic.Error));
126114WithGeneralDiagnosticOption(ReportDiagnostic.Suppress));
126118comp = CreateCompilation(new[] { source, source2 }, options: compilationOptions.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Hidden));
126123WithSpecificDiagnosticOptions(id, ReportDiagnostic.Hidden).
126124WithGeneralDiagnosticOption(ReportDiagnostic.Error));
126129WithGeneralDiagnosticOption(ReportDiagnostic.Hidden));
126134WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default).
126135WithGeneralDiagnosticOption(ReportDiagnostic.Hidden));
126147foreach (ReportDiagnostic option in Enum.GetValues(typeof(ReportDiagnostic)))
126219comp = CreateCompilation(new[] { source, source2 }, options: options.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default));
126223comp = CreateCompilation(new[] { source, source2 }, options: options.WithGeneralDiagnosticOption(ReportDiagnostic.Default));
126228WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default).
126229WithGeneralDiagnosticOption(ReportDiagnostic.Error));
126233comp = CreateCompilation(new[] { source, source2 }, options: options.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Error));
126238WithSpecificDiagnosticOptions(id, ReportDiagnostic.Error).
126239WithGeneralDiagnosticOption(ReportDiagnostic.Default));
126244WithGeneralDiagnosticOption(ReportDiagnostic.Error));
126249WithSpecificDiagnosticOptions(id, ReportDiagnostic.Suppress));
126254WithSpecificDiagnosticOptions(id, ReportDiagnostic.Suppress).
126255WithGeneralDiagnosticOption(ReportDiagnostic.Error));
126260WithGeneralDiagnosticOption(ReportDiagnostic.Suppress));
126264comp = CreateCompilation(new[] { source, source2 }, options: options.WithSpecificDiagnosticOptions(id, ReportDiagnostic.Hidden));
126269WithSpecificDiagnosticOptions(id, ReportDiagnostic.Hidden).
126270WithGeneralDiagnosticOption(ReportDiagnostic.Error));
126275WithGeneralDiagnosticOption(ReportDiagnostic.Hidden));
126280WithSpecificDiagnosticOptions(id, ReportDiagnostic.Default).
126281WithGeneralDiagnosticOption(ReportDiagnostic.Hidden));
145052options: WithNullableEnable().WithSpecificDiagnosticOptions("CS0436", ReportDiagnostic.Suppress));
145065options: WithNullableEnable().WithSpecificDiagnosticOptions("CS0436", ReportDiagnostic.Suppress));
145122", options: WithNullableEnable().WithSpecificDiagnosticOptions("CS0436", ReportDiagnostic.Suppress));
145140", options: WithNullableEnable().WithSpecificDiagnosticOptions("CS0436", ReportDiagnostic.Suppress));
145194", options: WithNullableEnable().WithSpecificDiagnosticOptions("CS0436", ReportDiagnostic.Suppress));
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (39)
Compilation\CompilationAPITests.cs (12)
38params (string, ReportDiagnostic)[] options)
52diagnosticOptions: CreateImmutableDictionary(("CS1584", ReportDiagnostic.Suppress)),
71.WithGeneralDiagnosticOption(ReportDiagnostic.Suppress);
76new TestSyntaxTreeOptionsProvider((tree, new[] { ("CS0078", ReportDiagnostic.Warn) })));
100var options = WithDiagnosticOptions(tree, ("CS0078", ReportDiagnostic.Suppress));
125var options = WithDiagnosticOptions(tree, ("CS0078", ReportDiagnostic.Error));
138var options = WithDiagnosticOptions(tree, ("CS0078", ReportDiagnostic.Suppress));
148CreateImmutableDictionary(("CS0078", ReportDiagnostic.Error)));
168(tree, new[] { ("CS0078", ReportDiagnostic.Suppress) }),
169(newTree, new[] { ("CS0078", ReportDiagnostic.Error) })
194new TestSyntaxTreeOptionsProvider((tree, new[] { ("cs0078", ReportDiagnostic.Suppress) }))
207(tree, new[] { ("cs0078", ReportDiagnostic.Suppress) }))
Compilation\CSharpCompilationOptionsTests.cs (17)
84TestHiddenProperty((old, value) => old.WithGeneralDiagnosticOption(value), opt => opt.GeneralDiagnosticOption, ReportDiagnostic.Suppress);
87new Dictionary<string, ReportDiagnostic> { { "CS0001", ReportDiagnostic.Error } }.ToImmutableDictionary());
122TestProperty((old, value) => old.WithGeneralDiagnosticOption(value), opt => opt.GeneralDiagnosticOption, ReportDiagnostic.Suppress);
126new Dictionary<string, ReportDiagnostic> { { "CS0001", ReportDiagnostic.Error } }.ToImmutableDictionary());
193Assert.Equal(ReportDiagnostic.Default, defaultWarnings.GeneralDiagnosticOption);
196Assert.Equal(ReportDiagnostic.Error, new CSharpCompilationOptions(OutputKind.ConsoleApplication).WithGeneralDiagnosticOption(ReportDiagnostic.Error).GeneralDiagnosticOption);
197Assert.Equal(ReportDiagnostic.Default, new CSharpCompilationOptions(OutputKind.ConsoleApplication).WithGeneralDiagnosticOption(ReportDiagnostic.Default).GeneralDiagnosticOption);
228var warnings = new Dictionary<string, ReportDiagnostic>
230{ MessageProvider.Instance.GetIdForErrorCode(1), ReportDiagnostic.Error },
231{ MessageProvider.Instance.GetIdForErrorCode(2), ReportDiagnostic.Suppress },
232{ MessageProvider.Instance.GetIdForErrorCode(3), ReportDiagnostic.Warn }
397ReportDiagnostic generalDiagnosticOption = 0;
399IEnumerable<KeyValuePair<string, ReportDiagnostic>> specificDiagnosticOptions = null;
Microsoft.CodeAnalysis.CSharp.Syntax.UnitTests (105)
Diagnostics\DiagnosticTest.cs (97)
575IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
576warnings.Add(MessageProvider.Instance.GetIdForErrorCode(420), ReportDiagnostic.Suppress);
580option = TestOptions.ReleaseExe.WithGeneralDiagnosticOption(ReportDiagnostic.Error);
586warnings[MessageProvider.Instance.GetIdForErrorCode(420)] = ReportDiagnostic.Error;
587option = TestOptions.ReleaseExe.WithGeneralDiagnosticOption(ReportDiagnostic.Default).WithSpecificDiagnosticOptions(warnings);
619IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
620warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Suppress);
627warnings[MessageProvider.Instance.GetIdForErrorCode(168)] = ReportDiagnostic.Error;
649option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
679IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
680warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
696option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
730IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
731warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
753option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
786IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
787warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
809option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
842IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
843warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
865option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
900IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
901warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
923option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
958IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
959warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
981option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
1017IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1018warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1046option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
1087IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1088warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1122option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
1158IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1159warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1187option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
1223IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1224warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1240option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
1276IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1277warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1293option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
1330IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1331warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1347option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
1380IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1381warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1391option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
1431var warnings = new Dictionary<string, ReportDiagnostic>();
1432warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1448option = commonoption.WithWarningLevel(2).WithGeneralDiagnosticOption(ReportDiagnostic.Error);
1487IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1488warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1504warnings = new Dictionary<string, ReportDiagnostic>();
1505warnings.Add(MessageProvider.Instance.GetIdForErrorCode(1633), ReportDiagnostic.Suppress);
1554IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1555warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1604IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1605warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1660IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1661warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1707IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1708warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1744IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1745warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1777IDictionary<string, ReportDiagnostic> warnings = new Dictionary<string, ReportDiagnostic>();
1778warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1788warnings[MessageProvider.Instance.GetIdForErrorCode(168)] = ReportDiagnostic.Suppress;
1826var warnings = new Dictionary<string, ReportDiagnostic>();
1827warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
1840warnings[MessageProvider.Instance.GetIdForErrorCode(168)] = ReportDiagnostic.Suppress;
2149var options = TestOptions.DebugDll.WithGeneralDiagnosticOption(ReportDiagnostic.Suppress);
2250var warnings = new Dictionary<string, ReportDiagnostic>();
2251warnings.Add(MessageProvider.Instance.GetIdForErrorCode(168), ReportDiagnostic.Error);
2270warnings[MessageProvider.Instance.GetIdForErrorCode(168)] = ReportDiagnostic.Suppress;
Syntax\SyntaxTreeTests.cs (8)
130var options = CreateImmutableDictionary(("CS0078", ReportDiagnostic.Suppress));
140var options = CreateImmutableDictionary(("CS0078", ReportDiagnostic.Suppress));
166Assert.NotSame(ImmutableDictionary<string, ReportDiagnostic>.Empty, tree.DiagnosticOptions);
176diagnosticOptions: ImmutableDictionary<string, ReportDiagnostic>.Empty,
181Assert.Same(ImmutableDictionary<string, ReportDiagnostic>.Empty, tree.DiagnosticOptions);
187var options = CreateImmutableDictionary(("CS0078", ReportDiagnostic.Suppress));
220var newTree = tree.WithDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>.Empty);
232new[] { KeyValuePair.Create("CS00778", ReportDiagnostic.Suppress) });
Microsoft.CodeAnalysis.CSharp.Test.Utilities (11)
CSharpTestBase.cs (7)
2927internal static ImmutableDictionary<string, ReportDiagnostic> ReportStructInitializationWarnings { get; } = ImmutableDictionary.CreateRange(
2930KeyValuePair.Create(GetIdForErrorCode(ErrorCode.WRN_UseDefViolationPropertySupportedVersion), ReportDiagnostic.Warn),
2931KeyValuePair.Create(GetIdForErrorCode(ErrorCode.WRN_UseDefViolationFieldSupportedVersion), ReportDiagnostic.Warn),
2932KeyValuePair.Create(GetIdForErrorCode(ErrorCode.WRN_UseDefViolationThisSupportedVersion), ReportDiagnostic.Warn),
2933KeyValuePair.Create(GetIdForErrorCode(ErrorCode.WRN_UnassignedThisAutoPropertySupportedVersion), ReportDiagnostic.Warn),
2934KeyValuePair.Create(GetIdForErrorCode(ErrorCode.WRN_UnassignedThisSupportedVersion), ReportDiagnostic.Warn),
3190options = options.WithSpecificDiagnosticOptions("SYSLIB5007", ReportDiagnostic.Suppress);
TestOptions.cs (4)
173public static CSharpCompilationOptions WithSpecificDiagnosticOptions(this CSharpCompilationOptions options, string key, ReportDiagnostic value)
175return options.WithSpecificDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>.Empty.Add(key, value));
178public static CSharpCompilationOptions WithSpecificDiagnosticOptions(this CSharpCompilationOptions options, string key1, string key2, ReportDiagnostic value)
180return options.WithSpecificDiagnosticOptions(ImmutableDictionary<string, ReportDiagnostic>.Empty.Add(key1, value).Add(key2, value));
Microsoft.CodeAnalysis.CSharp.Workspaces.UnitTests (12)
CodeStyle\CSharpEditorConfigCodeStyleParserTests.cs (12)
43[InlineData("false:none", (int)ExpressionBodyPreference.Never, ReportDiagnostic.Suppress)]
44[InlineData("true:warning", (int)ExpressionBodyPreference.WhenPossible, ReportDiagnostic.Warn)]
45[InlineData("when_on_single_line:error", (int)ExpressionBodyPreference.WhenOnSingleLine, ReportDiagnostic.Error)]
48[InlineData("false : none", (int)ExpressionBodyPreference.Never, ReportDiagnostic.Suppress)]
49[InlineData("true : warning", (int)ExpressionBodyPreference.WhenPossible, ReportDiagnostic.Warn)]
50[InlineData("when_on_single_line : error", (int)ExpressionBodyPreference.WhenOnSingleLine, ReportDiagnostic.Error)]
55public void TestParseExpressionBodyPreference(string optionString, int parsedValue, ReportDiagnostic? severity)
58severity ??= ReportDiagnostic.Error;
67[InlineData("inside_namespace:warning", AddImportPlacement.InsideNamespace, ReportDiagnostic.Warn)]
68[InlineData("outside_namespace:suggestion", AddImportPlacement.OutsideNamespace, ReportDiagnostic.Info)]
71internal void TestParseUsingDirectivesPlacement(string optionString, AddImportPlacement parsedValue, ReportDiagnostic? severity)
74severity ??= ReportDiagnostic.Error;
Microsoft.CodeAnalysis.EditorFeatures (30)
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (1)
Microsoft.CodeAnalysis.Extensions.Package (23)
Microsoft.CodeAnalysis.Features (38)
Microsoft.CodeAnalysis.LanguageServer.Protocol.UnitTests (4)
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (121)
Microsoft.CodeAnalysis.PublicApiAnalyzers (121)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
Microsoft.CodeAnalysis.Rebuild (2)
Microsoft.CodeAnalysis.Rebuild.UnitTests (4)
Microsoft.CodeAnalysis.ResxSourceGenerator (121)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
Microsoft.CodeAnalysis.ResxSourceGenerator.UnitTests (3)
Microsoft.CodeAnalysis.Test.Utilities (34)
Compilation\TestSyntaxTreeOptionsProvider.cs (13)
15private readonly Dictionary<SyntaxTree, Dictionary<string, ReportDiagnostic>>? _options;
17private readonly Dictionary<string, ReportDiagnostic>? _globalOptions;
20(string? key, ReportDiagnostic diagnostic) globalOption,
21params (SyntaxTree, (string, ReportDiagnostic)[])[] options)
32_globalOptions = new Dictionary<string, ReportDiagnostic>(Section.PropertiesKeyComparer) { { globalOption.key, globalOption.diagnostic } };
38params (SyntaxTree, (string, ReportDiagnostic)[])[] options)
43(string, ReportDiagnostic) globalOption,
44params (SyntaxTree, (string, ReportDiagnostic)[])[] options)
49SyntaxTree tree, params (string, ReportDiagnostic)[] options)
71out ReportDiagnostic severity)
79severity = ReportDiagnostic.Default;
83public override bool TryGetGlobalDiagnosticValue(string diagnosticId, CancellationToken cancellationToken, out ReportDiagnostic severity)
90severity = ReportDiagnostic.Default;
Microsoft.CodeAnalysis.UnitTests (94)
Analyzers\AnalyzerConfigTests.cs (39)
963CreateImmutableDictionary(("cs000", ReportDiagnostic.Suppress)),
964CreateImmutableDictionary(("cs000", ReportDiagnostic.Error)),
992CreateImmutableDictionary(("cs000", ReportDiagnostic.Suppress))
1013CreateImmutableDictionary(("cs000", ReportDiagnostic.Error)),
1014CreateImmutableDictionary(("cs000", ReportDiagnostic.Error)),
1040CreateImmutableDictionary(("cs000", ReportDiagnostic.Suppress)),
1041CreateImmutableDictionary(("cs000", ReportDiagnostic.Error)),
1063("cs000", ReportDiagnostic.Suppress),
1064("cs001", ReportDiagnostic.Info)),
1085("cs000", ReportDiagnostic.Hidden),
1086("cs001", ReportDiagnostic.Hidden)),
1109("cs000", ReportDiagnostic.Suppress),
1110("cs001", ReportDiagnostic.Info))
1139("cs000", ReportDiagnostic.Warn),
1140("cs001", ReportDiagnostic.Error)),
1142("cs000", ReportDiagnostic.Warn),
1143("cs001", ReportDiagnostic.Info))
1165("cs000", ReportDiagnostic.Info)),
1191("cs001", ReportDiagnostic.Info)),
1193("cs000", ReportDiagnostic.Suppress),
1194("cs001", ReportDiagnostic.Error)),
1196("cs000", ReportDiagnostic.Suppress))
1216("cs000", ReportDiagnostic.Suppress))
1252(string diagId, ReportDiagnostic severity)[][] expected,
1269Assert.True(treeOptions.TryGetValue(item.diagId, out var severity));
1409new[] { ("cs000", ReportDiagnostic.Suppress) },
1410new[] { ("cs000", ReportDiagnostic.Error) },
1411new[] { ("cs000", ReportDiagnostic.Warn) }
1509CreateImmutableDictionary(("", ReportDiagnostic.Warn)),
1537Assert.Equal(new ImmutableDictionary<string, ReportDiagnostic>[]
1570("cs000", ReportDiagnostic.Warn)),
1572("cs000", ReportDiagnostic.Warn)),
1608Assert.Equal(KeyValuePair.Create("cs000", ReportDiagnostic.Warn), options[0].TreeOptions.Single());
2032Assert.Equal(CreateImmutableDictionary(("cs000", ReportDiagnostic.Suppress),
2033("cs001", ReportDiagnostic.Error)),
2055CreateImmutableDictionary(("cs000", ReportDiagnostic.Error))
2102CreateImmutableDictionary(("cs000", ReportDiagnostic.Error)),
2131CreateImmutableDictionary(("cs000", ReportDiagnostic.Suppress)),
2132CreateImmutableDictionary(("cs000", ReportDiagnostic.Warn))
CommonCommandLineParserTests.cs (54)
167Assert.Equal(expected: ReportDiagnostic.Error, actual: ruleSet.SpecificDiagnosticOptions["CA1012"]);
202Assert.Equal(ReportDiagnostic.Warn, ruleSet.GeneralDiagnosticOption);
216Assert.Equal(ReportDiagnostic.Default, ruleSet.GeneralDiagnosticOption);
231Assert.Equal(ReportDiagnostic.Default, ruleSet.GeneralDiagnosticOption);
256Assert.Equal(ReportDiagnostic.Default, ruleSet.GeneralDiagnosticOption);
291Assert.Equal(ReportDiagnostic.Default, ruleSet.GeneralDiagnosticOption);
411Assert.Equal(ReportDiagnostic.Error, ruleSet.SpecificDiagnosticOptions["CA1012"]);
413Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1013"]);
415Assert.Equal(ReportDiagnostic.Suppress, ruleSet.SpecificDiagnosticOptions["CA1014"]);
417Assert.Equal(ReportDiagnostic.Info, ruleSet.SpecificDiagnosticOptions["CA1015"]);
419Assert.Equal(ReportDiagnostic.Hidden, ruleSet.SpecificDiagnosticOptions["CA1016"]);
452Assert.Equal(ReportDiagnostic.Default, ruleSet.Includes.First().Action);
476Assert.Equal(ReportDiagnostic.Default, ruleSet.GeneralDiagnosticOption);
478Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1013"]);
501Assert.Equal(ReportDiagnostic.Default, ruleSet.GeneralDiagnosticOption);
503Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
505Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1013"]);
529Assert.Equal(ReportDiagnostic.Hidden, ruleSet.GeneralDiagnosticOption);
531Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
533Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1013"]);
557Assert.Equal(ReportDiagnostic.Info, ruleSet.GeneralDiagnosticOption);
559Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
561Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1013"]);
586Assert.Equal(ReportDiagnostic.Error, ruleSet.GeneralDiagnosticOption);
588Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
590Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1013"]);
624Assert.Equal(ReportDiagnostic.Error, ruleSet.GeneralDiagnosticOption);
626Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
628Assert.Equal(ReportDiagnostic.Error, ruleSet.SpecificDiagnosticOptions["CA1013"]);
662Assert.Equal(ReportDiagnostic.Error, ruleSet.GeneralDiagnosticOption);
664Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
666Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1013"]);
668Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1014"]);
694Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
730Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
764Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
767Assert.Equal(ReportDiagnostic.Error, ruleSet.SpecificDiagnosticOptions["CA1013"]);
791Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
815Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
817Assert.Equal(ReportDiagnostic.Error, ruleSet.SpecificDiagnosticOptions["CA1013"]);
818Assert.Equal(ReportDiagnostic.Default, ruleSet.GeneralDiagnosticOption);
841Assert.Equal(ReportDiagnostic.Error, ruleSet.GeneralDiagnosticOption);
864Assert.Equal(ReportDiagnostic.Warn, ruleSet.GeneralDiagnosticOption);
887Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
889Assert.Equal(ReportDiagnostic.Suppress, ruleSet.SpecificDiagnosticOptions["CA1013"]);
912Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1012"]);
914Assert.Equal(ReportDiagnostic.Error, ruleSet.SpecificDiagnosticOptions["CA1013"]);
952Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1000"]);
953Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA1001"]);
954Assert.Equal(ReportDiagnostic.Error, ruleSet.SpecificDiagnosticOptions["CA2100"]);
955Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA2104"]);
956Assert.Equal(ReportDiagnostic.Warn, ruleSet.SpecificDiagnosticOptions["CA2105"]);
957Assert.Equal(ReportDiagnostic.Suppress, ruleSet.SpecificDiagnosticOptions["CA2111"]);
958Assert.Equal(ReportDiagnostic.Suppress, ruleSet.SpecificDiagnosticOptions["CA2119"]);
Microsoft.CodeAnalysis.VisualBasic (99)
CommandLine\VisualBasicCommandLineParser.vb (23)
150Dim generalDiagnosticOption As ReportDiagnostic = ReportDiagnostic.Default
154Dim specificDiagnosticOptionsFromRuleSet = New Dictionary(Of String, ReportDiagnostic)(CaseInsensitiveComparison.Comparer)
155Dim specificDiagnosticOptionsFromGeneralArguments = New Dictionary(Of String, ReportDiagnostic)(CaseInsensitiveComparison.Comparer)
156Dim specificDiagnosticOptionsFromSpecificArguments = New Dictionary(Of String, ReportDiagnostic)(CaseInsensitiveComparison.Comparer)
157Dim specificDiagnosticOptionsFromNoWarnArguments = New Dictionary(Of String, ReportDiagnostic)(CaseInsensitiveComparison.Comparer)
847generalDiagnosticOption = ReportDiagnostic.Error
851If pair.Value = ReportDiagnostic.Warn Then
852specificDiagnosticOptionsFromGeneralArguments.Add(pair.Key, ReportDiagnostic.Error)
859AddWarnings(specificDiagnosticOptionsFromSpecificArguments, ReportDiagnostic.Error, ParseWarnings(value))
864If generalDiagnosticOption <> ReportDiagnostic.Suppress Then
865generalDiagnosticOption = ReportDiagnostic.Default
874Dim ruleSetValue As ReportDiagnostic
878specificDiagnosticOptionsFromSpecificArguments(id) = ReportDiagnostic.Default
886generalDiagnosticOption = ReportDiagnostic.Suppress
890If pair.Value <> ReportDiagnostic.Error Then
891specificDiagnosticOptionsFromGeneralArguments.Add(pair.Key, ReportDiagnostic.Suppress)
898AddWarnings(specificDiagnosticOptionsFromNoWarnArguments, ReportDiagnostic.Suppress, ParseWarnings(value))
1302Dim specificDiagnosticOptions = New Dictionary(Of String, ReportDiagnostic)(specificDiagnosticOptionsFromRuleSet, CaseInsensitiveComparison.Comparer)
2276Private Shared Sub AddWarnings(d As IDictionary(Of String, ReportDiagnostic), kind As ReportDiagnostic, items As IEnumerable(Of String))
2278Dim existing As ReportDiagnostic
2281If existing <> ReportDiagnostic.Suppress Then
Compilation\VisualBasicDiagnosticFilter.vb (27)
31generalDiagnosticOption As ReportDiagnostic,
32specificDiagnosticOptions As IDictionary(Of String, ReportDiagnostic),
38ImmutableDictionary.Create(Of String, ReportDiagnostic)(CaseInsensitiveComparison.Comparer).AddRange(specificDiagnosticOptions)
66Dim report As ReportDiagnostic
130generalDiagnosticOption As ReportDiagnostic,
131caseInsensitiveSpecificDiagnosticOptions As IDictionary(Of String, ReportDiagnostic),
134<Out> ByRef hasDisableDirectiveSuppression As Boolean) As ReportDiagnostic
137Dim report As ReportDiagnostic
148If report = ReportDiagnostic.Default Then
166If report = ReportDiagnostic.Warn AndAlso generalDiagnosticOption = ReportDiagnostic.Error AndAlso Not specifiedWarnAsErrorMinus Then
167report = ReportDiagnostic.Error
180Dim reportFromSyntaxTreeOptions As ReportDiagnostic
183Not (specifiedWarnAsErrorMinus AndAlso severity = DiagnosticSeverity.Warning AndAlso reportFromSyntaxTreeOptions = ReportDiagnostic.Error) Then
188If Not specifiedWarnAsErrorMinus AndAlso report = ReportDiagnostic.Warn AndAlso generalDiagnosticOption = ReportDiagnostic.Error Then
189report = ReportDiagnostic.Error
195report = If(isEnabledByDefault, ReportDiagnostic.Default, ReportDiagnostic.Suppress)
199If report = ReportDiagnostic.Suppress Then
200Return ReportDiagnostic.Suppress
205location.SourceTree.GetWarningState(id, location.SourceSpan.Start) = ReportDiagnostic.Suppress Then
216If generalDiagnosticOption = ReportDiagnostic.Suppress AndAlso
218Return ReportDiagnostic.Suppress
223If (generalDiagnosticOption = ReportDiagnostic.Error) AndAlso (severity = DiagnosticSeverity.Warning) Then
227If (Not isSpecified) AndAlso (report = ReportDiagnostic.Default) Then
228Return ReportDiagnostic.Error
Syntax\VisualBasicSyntaxTree.vb (6)
167Optional diagnosticOptions As ImmutableDictionary(Of String, ReportDiagnostic) = Nothing) As SyntaxTree
242Optional diagnosticOptions As ImmutableDictionary(Of String, ReportDiagnostic) = Nothing,
252Optional diagnosticOptions As ImmutableDictionary(Of String, ReportDiagnostic) = Nothing,
269Optional diagnosticOptions As ImmutableDictionary(Of String, ReportDiagnostic) = Nothing,
285Optional diagnosticOptions As ImmutableDictionary(Of String, ReportDiagnostic) = Nothing,
476Friend Function GetWarningState(id As String, position As Integer) As ReportDiagnostic
VisualBasicCompilationOptions.vb (21)
88Optional generalDiagnosticOption As ReportDiagnostic = ReportDiagnostic.Default,
89Optional specificDiagnosticOptions As IEnumerable(Of KeyValuePair(Of String, ReportDiagnostic)) = Nothing,
165generalDiagnosticOption As ReportDiagnostic,
166specificDiagnosticOptions As IEnumerable(Of KeyValuePair(Of String, ReportDiagnostic)),
234generalDiagnosticOption As ReportDiagnostic,
235specificDiagnosticOptions As IEnumerable(Of KeyValuePair(Of String, ReportDiagnostic)),
811Protected Overrides Function CommonWithGeneralDiagnosticOption(value As ReportDiagnostic) As CompilationOptions
815Protected Overrides Function CommonWithSpecificDiagnosticOptions(specificDiagnosticOptions As ImmutableDictionary(Of String, ReportDiagnostic)) As CompilationOptions
819Protected Overrides Function CommonWithSpecificDiagnosticOptions(specificDiagnosticOptions As IEnumerable(Of KeyValuePair(Of String, ReportDiagnostic))) As CompilationOptions
841Public Shadows Function WithGeneralDiagnosticOption(value As ReportDiagnostic) As VisualBasicCompilationOptions
854Public Shadows Function WithSpecificDiagnosticOptions(value As ImmutableDictionary(Of String, ReportDiagnostic)) As VisualBasicCompilationOptions
856value = ImmutableDictionary(Of String, ReportDiagnostic).Empty
871Public Shadows Function WithSpecificDiagnosticOptions(value As IEnumerable(Of KeyValuePair(Of String, ReportDiagnostic))) As VisualBasicCompilationOptions
1164generalDiagnosticOption As ReportDiagnostic,
1165specificDiagnosticOptions As IEnumerable(Of KeyValuePair(Of String, ReportDiagnostic)),
1229generalDiagnosticOption As ReportDiagnostic,
1230specificDiagnosticOptions As IEnumerable(Of KeyValuePair(Of String, ReportDiagnostic)),
1295Optional generalDiagnosticOption As ReportDiagnostic = ReportDiagnostic.Default,
1296Optional specificDiagnosticOptions As IEnumerable(Of KeyValuePair(Of String, ReportDiagnostic)) = Nothing,
Microsoft.CodeAnalysis.Workspaces (130)
CodeStyle\NotificationOption2_operators.cs (11)
12ReportDiagnostic.Suppress => NotificationOption.None,
13ReportDiagnostic.Hidden => NotificationOption.Silent,
14ReportDiagnostic.Info => NotificationOption.Suggestion,
15ReportDiagnostic.Warn => NotificationOption.Warning,
16ReportDiagnostic.Error => NotificationOption.Error,
23public static string GetDisplayString(this ReportDiagnostic severity)
26ReportDiagnostic.Suppress => WorkspacesResources.None,
27ReportDiagnostic.Hidden => WorkspacesResources.Refactoring_Only,
28ReportDiagnostic.Info => WorkspacesResources.Suggestion,
29ReportDiagnostic.Warn => WorkspacesResources.Warning,
30ReportDiagnostic.Error => WorkspacesResources.Error,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
Microsoft.CodeAnalysis.Workspaces.Test.Utilities (7)
Microsoft.CodeAnalysis.Workspaces.UnitTests (56)
Options\EditorConfigCodeStyleParserTests.cs (30)
15[InlineData("true:none", true, ReportDiagnostic.Suppress)]
16[InlineData("true:refactoring", true, ReportDiagnostic.Hidden)]
17[InlineData("true:silent", true, ReportDiagnostic.Hidden)]
18[InlineData("true:suggestion", true, ReportDiagnostic.Info)]
19[InlineData("true:warning", true, ReportDiagnostic.Warn)]
20[InlineData("true:error", true, ReportDiagnostic.Error)]
21[InlineData("true", true, ReportDiagnostic.Hidden)]
22[InlineData("false:none", false, ReportDiagnostic.Suppress)]
23[InlineData("false:refactoring", false, ReportDiagnostic.Hidden)]
24[InlineData("false:silent", false, ReportDiagnostic.Hidden)]
25[InlineData("false:suggestion", false, ReportDiagnostic.Info)]
26[InlineData("false:warning", false, ReportDiagnostic.Warn)]
27[InlineData("false:error", false, ReportDiagnostic.Error)]
28[InlineData("false", false, ReportDiagnostic.Hidden)]
29[InlineData("*", false, ReportDiagnostic.Hidden)]
30[InlineData("false:false", false, ReportDiagnostic.Hidden)]
33[InlineData("true : warning", true, ReportDiagnostic.Warn)]
34[InlineData("false : warning", false, ReportDiagnostic.Warn)]
35[InlineData("true : error", true, ReportDiagnostic.Error)]
36[InlineData("false : error", false, ReportDiagnostic.Error)]
37public void TestParseEditorConfigCodeStyleOption(string args, bool isEnabled, ReportDiagnostic severity)
47[InlineData("never:none", AccessibilityModifiersRequired.Never, ReportDiagnostic.Suppress)]
48[InlineData("always:suggestion", AccessibilityModifiersRequired.Always, ReportDiagnostic.Info)]
49[InlineData("for_non_interface_members:warning", AccessibilityModifiersRequired.ForNonInterfaceMembers, ReportDiagnostic.Warn)]
50[InlineData("omit_if_default:error", AccessibilityModifiersRequired.OmitIfDefault, ReportDiagnostic.Error)]
51[InlineData("never : none", AccessibilityModifiersRequired.Never, ReportDiagnostic.Suppress), WorkItem("https://github.com/dotnet/roslyn/issues/27685")]
52[InlineData("always : suggestion", AccessibilityModifiersRequired.Always, ReportDiagnostic.Info)]
53[InlineData("for_non_interface_members : warning", AccessibilityModifiersRequired.ForNonInterfaceMembers, ReportDiagnostic.Warn)]
54[InlineData("omit_if_default : error", AccessibilityModifiersRequired.OmitIfDefault, ReportDiagnostic.Error)]
55internal void TestParseEditorConfigAccessibilityModifiers(string configurationString, AccessibilityModifiersRequired value, ReportDiagnostic severity)
SolutionTests\SolutionTests.cs (9)
4728Assert.True(provider.TryGetDiagnosticValue(newSyntaxTree, "CA1234", CancellationToken.None, out var severity));
4729Assert.Equal(ReportDiagnostic.Error, severity);
4757Assert.True(provider.TryGetDiagnosticValue(syntaxTreeAfterAddingEditorConfig, "CA1234", CancellationToken.None, out var severity));
4758Assert.Equal(ReportDiagnostic.Error, severity);
4798Assert.True(provider.TryGetDiagnosticValue(syntaxTreeBeforeEditorConfigChange, "CA1234", CancellationToken.None, out var severity));
4799Assert.Equal(ReportDiagnostic.Error, severity);
4812Assert.Equal(ReportDiagnostic.Error, severity);
4842Assert.True(newProvider.TryGetGlobalDiagnosticValue("CA1234", default, out var severity));
4843Assert.Equal(ReportDiagnostic.Error, severity);
Microsoft.VisualStudio.LanguageServices (48)
EditorConfigSettings\Analyzers\ViewModel\SeverityViewModel.cs (11)
49ReportDiagnostic.Suppress => 0,
50ReportDiagnostic.Hidden => 1,
51ReportDiagnostic.Info => 2,
52ReportDiagnostic.Warn => 3,
53ReportDiagnostic.Error => 4,
68var severity = selectedIndex switch
700 => ReportDiagnostic.Suppress,
711 => ReportDiagnostic.Hidden,
722 => ReportDiagnostic.Info,
733 => ReportDiagnostic.Warn,
744 => ReportDiagnostic.Error,
EditorConfigSettings\NamingStyle\ViewModel\ColumnViewModels\NamingStylesSeverityViewModel.cs (11)
21ReportDiagnostic.Suppress => 0,
22ReportDiagnostic.Hidden => 1,
23ReportDiagnostic.Info => 2,
24ReportDiagnostic.Warn => 3,
25ReportDiagnostic.Error => 4,
34var severity = selectedIndex switch
360 => ReportDiagnostic.Suppress,
371 => ReportDiagnostic.Hidden,
382 => ReportDiagnostic.Info,
393 => ReportDiagnostic.Warn,
404 => ReportDiagnostic.Error,
Microsoft.VisualStudio.LanguageServices.CSharp (15)
Microsoft.VisualStudio.LanguageServices.CSharp.UnitTests (25)
ProjectSystemShim\LegacyProject\AnalyzersTests.cs (16)
42Assert.Equal(expected: ReportDiagnostic.Default, actual: options.GeneralDiagnosticOption);
48Assert.Equal(expected: ReportDiagnostic.Error, actual: options.GeneralDiagnosticOption);
84Assert.Equal(expected: ReportDiagnostic.Warn, actual: options.GeneralDiagnosticOption);
91Assert.Equal(expected: ReportDiagnostic.Error, actual: options.GeneralDiagnosticOption);
115var ca1012DiagnosticOption = options.SpecificDiagnosticOptions["CA1012"];
116Assert.Equal(expected: ReportDiagnostic.Error, actual: ca1012DiagnosticOption);
140var ca1014DiagnosticOption = options.SpecificDiagnosticOptions["CS1014"];
141Assert.Equal(expected: ReportDiagnostic.Error, actual: ca1014DiagnosticOption);
183Assert.Equal(expected: ReportDiagnostic.Error, actual: options.SpecificDiagnosticOptions["CS1014"]);
187Assert.Equal(expected: ReportDiagnostic.Suppress, actual: options.SpecificDiagnosticOptions["CS1014"]);
191Assert.Equal(expected: ReportDiagnostic.Error, actual: options.SpecificDiagnosticOptions["CS1014"]);
195Assert.Equal(expected: ReportDiagnostic.Suppress, actual: options.SpecificDiagnosticOptions["CS1014"]);
222var ca1014DiagnosticOption = options.SpecificDiagnosticOptions["CS1014"];
223Assert.Equal(expected: ReportDiagnostic.Suppress, actual: ca1014DiagnosticOption);
257Assert.Equal(expected: ReportDiagnostic.Error, actual: options.GeneralDiagnosticOption);
268Assert.Equal(expected: ReportDiagnostic.Warn, actual: options.GeneralDiagnosticOption);
Microsoft.VisualStudio.LanguageServices.Implementation (46)
Mvc.Api.Analyzers.Test (2)
Roslyn.Diagnostics.Analyzers (121)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
RulesetToEditorconfigConverter (21)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
System.Windows.Forms.Analyzers.CSharp.Tests (5)
Test.Utilities (124)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,
Text.Analyzers (121)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ReportDiagnosticExtensions.cs (19)
11public static string ToAnalyzerConfigString(this ReportDiagnostic reportDiagnostic)
15ReportDiagnostic.Error => "error",
16ReportDiagnostic.Warn => "warning",
17ReportDiagnostic.Info => "suggestion",
18ReportDiagnostic.Hidden => "silent",
19ReportDiagnostic.Suppress => "none",
24public static bool IsLessSevereThan(this ReportDiagnostic current, ReportDiagnostic other)
28ReportDiagnostic.Error => false,
30ReportDiagnostic.Warn =>
33ReportDiagnostic.Error => true,
37ReportDiagnostic.Info =>
40ReportDiagnostic.Error => true,
41ReportDiagnostic.Warn => true,
45ReportDiagnostic.Hidden =>
48ReportDiagnostic.Error => true,
49ReportDiagnostic.Warn => true,
50ReportDiagnostic.Info => true,
54ReportDiagnostic.Suppress => true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\CodeStyle\NotificationOption2.cs (18)
16[property: DataMember(Order = 0)] ReportDiagnostic Severity, [property: DataMember(Order = 1)] bool IsExplicitlySpecified)
19/// Notification option to disable or suppress an option with <see cref="ReportDiagnostic.Suppress"/>.
21public static NotificationOption2 None => new(ReportDiagnostic.Suppress, false);
24/// Notification option for a silent or hidden option with <see cref="ReportDiagnostic.Hidden"/>.
26public static NotificationOption2 Silent => new(ReportDiagnostic.Hidden, false);
29/// Notification option for a suggestion or an info option with <see cref="ReportDiagnostic.Info"/>.
31public static NotificationOption2 Suggestion => new(ReportDiagnostic.Info, false);
34/// Notification option for a warning option with <see cref="ReportDiagnostic.Warn"/>.
36public static NotificationOption2 Warning => new(ReportDiagnostic.Warn, false);
39/// Notification option for an error option with <see cref="ReportDiagnostic.Error"/>.
41public static NotificationOption2 Error => new(ReportDiagnostic.Error, false);
46public static NotificationOption2 ForSeverity(ReportDiagnostic reportDiagnostic)
49ReportDiagnostic.Error => Error,
50ReportDiagnostic.Warn => Warning,
51ReportDiagnostic.Info => Suggestion,
52ReportDiagnostic.Hidden or ReportDiagnostic.Default => Silent,
53ReportDiagnostic.Suppress => None,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\DiagnosticDescriptorExtensions.cs (21)
34public static ReportDiagnostic GetEffectiveSeverity(
38ImmutableDictionary<string, ReportDiagnostic>? treeOptions)
40var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
45(!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
46reportDiagnostic == ReportDiagnostic.Default))
48if (treeOptions.TryGetValue(descriptor.Id, out reportDiagnostic) && reportDiagnostic != ReportDiagnostic.Default ||
51Debug.Assert(reportDiagnostic != ReportDiagnostic.Default);
64public static ReportDiagnostic GetEffectiveSeverity(this DiagnosticDescriptor descriptor, CompilationOptions compilationOptions, SyntaxTree tree, AnalyzerOptions analyzerOptions)
66var effectiveSeverity = descriptor.GetEffectiveSeverity(compilationOptions);
70if (!compilationOptions.SpecificDiagnosticOptions.TryGetValue(descriptor.Id, out var reportDiagnostic) ||
71reportDiagnostic == ReportDiagnostic.Default)
78var severityInEditorConfig = descriptor.GetEffectiveSeverity(analyzerConfigOptions, providerAndTree);
79if (severityInEditorConfig != ReportDiagnostic.Default)
86var severityInGlobalConfig = descriptor.GetEffectiveSeverity(analyzerOptions.AnalyzerConfigOptionsProvider.GlobalOptions, providerAndTree);
87if (severityInGlobalConfig != ReportDiagnostic.Default)
102EditorConfigSeverityStrings.TryParse(value, out var severity))
145public static ReportDiagnostic GetEffectiveSeverity(
150ReportDiagnostic severity;
182return ReportDiagnostic.Default;
203return ReportDiagnostic.Default;
217out ReportDiagnostic severity)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ReportDiagnosticExtensions.cs (13)
12public static string ToEditorConfigString(this ReportDiagnostic reportDiagnostic)
16ReportDiagnostic.Suppress => EditorConfigSeverityStrings.None,
17ReportDiagnostic.Hidden => EditorConfigSeverityStrings.Silent,
18ReportDiagnostic.Info => EditorConfigSeverityStrings.Suggestion,
19ReportDiagnostic.Warn => EditorConfigSeverityStrings.Warning,
20ReportDiagnostic.Error => EditorConfigSeverityStrings.Error,
25public static NotificationOption2 ToNotificationOption(this ReportDiagnostic reportDiagnostic, DiagnosticSeverity defaultSeverity)
27var isNonDefault = reportDiagnostic != ReportDiagnostic.Default;
30ReportDiagnostic.Error => NotificationOption2.Error,
31ReportDiagnostic.Warn => NotificationOption2.Warning,
32ReportDiagnostic.Info => NotificationOption2.Suggestion,
33ReportDiagnostic.Hidden => NotificationOption2.Silent,
34ReportDiagnostic.Suppress => NotificationOption2.None,