Skip to content

Commit bf87ca2

Browse files
authored
Fix analyzer RCS0012 (#1472)
1 parent f92b3fc commit bf87ca2

3 files changed

Lines changed: 29 additions & 7 deletions

File tree

ChangeLog.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1111

1212
- Fix analyzer [RCS1108](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS1108) ([PR](https://github.com/dotnet/roslynator/pull/1469))
1313
- Fix analyzer [RCS1201](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS1201) ([PR](https://github.com/dotnet/roslynator/pull/1470))
14+
- Fix analyzer [RCS0012](https://josefpihrt.github.io/docs/roslynator/analyzers/RCS0012) ([PR](https://github.com/dotnet/roslynator/pull/1472))
1415

1516
## [4.12.3] - 2024-05-10
1617

src/Formatting.Analyzers/CSharp/BlankLineBetweenDeclarationsAnalyzer.cs

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -204,14 +204,16 @@ private static void AnalyzeEnumDeclaration(SyntaxNodeAnalysisContext context)
204204
if ((isSingleLine ?? (isSingleLine = tree.IsSingleLineSpan(member.Span, cancellationToken)).Value)
205205
&& (isPreviousSingleLine ?? tree.IsSingleLineSpan(members[i - 1].Span, cancellationToken)))
206206
{
207-
if (!block.ContainsDocumentationComment
208-
&& block.Kind == TriviaBlockKind.BlankLine)
207+
if (!block.ContainsDocumentationComment)
209208
{
210-
ReportDiagnostic(context, DiagnosticRules.RemoveBlankLineBetweenSingleLineDeclarationsOfSameKind, block);
211-
}
212-
else
213-
{
214-
ReportDiagnostic(context, DiagnosticRules.AddBlankLineBetweenSingleLineDeclarations, block);
209+
if (block.Kind == TriviaBlockKind.BlankLine)
210+
{
211+
ReportDiagnostic(context, DiagnosticRules.RemoveBlankLineBetweenSingleLineDeclarationsOfSameKind, block);
212+
}
213+
else
214+
{
215+
ReportDiagnostic(context, DiagnosticRules.AddBlankLineBetweenSingleLineDeclarations, block);
216+
}
215217
}
216218
}
217219
else if (block.Kind != TriviaBlockKind.BlankLine)

src/Tests/Formatting.Analyzers.Tests/RCS0012AddBlankLineBetweenSingleLineDeclarationsTests.cs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,25 @@ enum E
135135
/// </summary>
136136
B = 1
137137
}
138+
");
139+
}
140+
141+
[Fact, Trait(Traits.Analyzer, DiagnosticIdentifiers.AddBlankLineBetweenSingleLineDeclarations)]
142+
public async Task TestNoDiagnostic_EnumMemberDeclarations_DocumentationComment()
143+
{
144+
await VerifyNoDiagnosticAsync(@"
145+
public enum C
146+
{
147+
/// <summary>
148+
/// a
149+
/// </summary>
150+
A = 0,
151+
152+
/// <summary>
153+
/// b
154+
/// </summary>
155+
B = 1
156+
}
138157
");
139158
}
140159
}

0 commit comments

Comments
 (0)