Skip to content

Commit 32218fd

Browse files
committed
chore: enable all modern analyzers
1 parent e6c2722 commit 32218fd

24 files changed

+77
-51
lines changed

src/AngleSharp.Diffing.Tests/Core/AttributeComparisonTest.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ public void Test005()
6565
var test = ToAttributeComparisonSource(@"<br foo=""bar"">", "foo");
6666
var comparison = new AttributeComparison(control, test);
6767

68-
var (actualCtrlElm, actualTestElm) = comparison.GetAttributeElements();
68+
var (actualCtrlElm, actualTestElm) = comparison.AttributeElements;
6969

7070
actualCtrlElm.ShouldBe(control.ElementSource.Node);
7171
actualTestElm.ShouldBe(test.ElementSource.Node);
@@ -135,7 +135,7 @@ public void Test005()
135135
var test = ToAttributeComparisonSource(@"<br foo=""bar"">", "foo");
136136
var comparison = new AttributeComparison(control, test);
137137

138-
var (actualCtrlElm, actualTestElm) = comparison.GetAttributeElements();
138+
var (actualCtrlElm, actualTestElm) = comparison.AttributeElements;
139139

140140
actualCtrlElm.ShouldBe(control.ElementSource.Node);
141141
actualTestElm.ShouldBe(test.ElementSource.Node);

src/AngleSharp.Diffing.Tests/Core/DiffingEngineTestBase.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ namespace AngleSharp.Diffing.Core;
22

33
public abstract class DiffingEngineTestBase : DiffingTestBase
44
{
5-
public DiffingEngineTestBase(DiffingTestFixture fixture) : base(fixture)
5+
protected DiffingEngineTestBase(DiffingTestFixture fixture) : base(fixture)
66
{
77
}
88

@@ -24,7 +24,7 @@ protected static HtmlDiffer CreateHtmlDiffer(
2424
);
2525
}
2626

27-
private class MockDiffingStrategy : IDiffingStrategy
27+
private sealed class MockDiffingStrategy : IDiffingStrategy
2828
{
2929
private readonly Func<ComparisonSource, FilterDecision>? _nodeFilter;
3030
private readonly Func<AttributeComparisonSource, FilterDecision>? _attrFilter;

src/AngleSharp.Diffing.Tests/Core/HtmlDifferenceEngineTest.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -510,14 +510,14 @@ private static Func<AttributeComparisonSource, FilterDecision> SpecificAttrFilte
510510
#endregion
511511

512512
#region CustomDiff
513-
public record CustomNodeDiff : NodeDiff
513+
public sealed record CustomNodeDiff : NodeDiff
514514
{
515515
public CustomNodeDiff(in Comparison comparison) : base(comparison)
516516
{
517517
}
518518
}
519519

520-
public record CustomAttrDiff : AttrDiff
520+
public sealed record CustomAttrDiff : AttrDiff
521521
{
522522
public CustomAttrDiff(in AttributeComparison comparison) : base(comparison, AttrDiffKind.Unspecified)
523523
{

src/AngleSharp.Diffing.Tests/DiffingTestBase.cs

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,18 @@ public abstract class DiffingTestBase : IClassFixture<DiffingTestFixture>
44
{
55
private readonly DiffingTestFixture _testFixture;
66

7+
8+
public static readonly TheoryData<CompareResult> SameAndSkipCompareResult = new TheoryData<CompareResult>
9+
{
10+
CompareResult.Same,
11+
CompareResult.Skip,
12+
};
13+
714
protected IDiffContext DummyContext { get; } = new DiffContext(default(IElement), default(IElement));
815

916
protected INodeList EmptyNodeList => ToNodeList("");
1017

11-
public DiffingTestBase(DiffingTestFixture fixture)
18+
protected DiffingTestBase(DiffingTestFixture fixture)
1219
{
1320
_testFixture = fixture;
1421
}
@@ -68,10 +75,4 @@ protected SourceMap ToSourceMap(string html, ComparisonSourceType sourceType = C
6875
var source = ToComparisonSource(html, sourceType);
6976
return new SourceMap(source);
7077
}
71-
72-
public static TheoryData<CompareResult> SameAndSkipCompareResult = new TheoryData<CompareResult>
73-
{
74-
CompareResult.Same,
75-
CompareResult.Skip,
76-
};
7778
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
// This file is used by Code Analysis to maintain SuppressMessage
2+
// attributes that are applied to this project.
3+
// Project-level suppressions either have no target or are given
4+
// a specific target and scoped to a namespace, type, member, etc.
5+
6+
using System.Diagnostics.CodeAnalysis;
7+
8+
[assembly: SuppressMessage("Usage", "CA2201:Do not raise reserved exception types", Justification = "Not relevant in tests.")]
9+
[assembly: SuppressMessage("Design", "CA1034:Nested types should not be visible", Justification = "Not relevant in tests")]

src/AngleSharp.Diffing.Tests/Strategies/DiffingStrategyPipelineTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ public DiffingStrategyPipelineTest(DiffingTestFixture fixture) : base(fixture)
66
{
77
}
88

9-
private FilterDecision NegateDecision(FilterDecision decision) => decision switch
9+
private static FilterDecision NegateDecision(FilterDecision decision) => decision switch
1010
{
1111
FilterDecision.Keep => FilterDecision.Exclude,
1212
FilterDecision.Exclude => FilterDecision.Keep,

src/AngleSharp.Diffing.Tests/Strategies/TextNodeStrategies/TextNodeTestBase.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public abstract class TextNodeTestBase : DiffingTestBase
1818

1919
public static readonly IEnumerable<object[]> WhitespaceCharStrings = AllWhitespaceCharacters.Select(c => new string[] { c.ToString(CultureInfo.InvariantCulture) }).ToArray();
2020

21-
public TextNodeTestBase(DiffingTestFixture fixture) : base(fixture)
21+
protected TextNodeTestBase(DiffingTestFixture fixture) : base(fixture)
2222
{
2323
}
2424
}

src/AngleSharp.Diffing/Core/AttributeComparison.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@ public readonly record struct AttributeComparison(in AttributeComparisonSource C
1010
/// <summary>
1111
/// Returns the control and test elements which the control and test attributes belongs to.
1212
/// </summary>
13-
public (IElement ControlElement, IElement TestElement) GetAttributeElements()
13+
public readonly (IElement ControlElement, IElement TestElement) AttributeElements
1414
=> ((IElement)Control.ElementSource.Node, (IElement)Test.ElementSource.Node);
1515
}

src/AngleSharp.Diffing/Core/AttributeComparisonSource.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ namespace AngleSharp.Diffing.Core;
3030
/// </summary>
3131
/// <param name="attributeName">Name of the attribute.</param>
3232
/// <param name="elementSource">The source of the element the attribute belongs to.</param>
33+
[SuppressMessage("Globalization", "CA1308:Normalize strings to uppercase", Justification = "Attribute names should be safe to lowercase.")]
3334
public AttributeComparisonSource(string attributeName, in ComparisonSource elementSource)
3435
{
3536
if (string.IsNullOrEmpty(attributeName))

src/AngleSharp.Diffing/Core/CompareDecision.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ public enum CompareDecision
99
/// <summary>
1010
/// Use when the compare result is unknown.
1111
/// </summary>
12-
Unknown = 0,
12+
None = 0,
1313
/// <summary>
1414
/// Use when the two compared nodes or attributes are the same.
1515
/// </summary>

0 commit comments

Comments
 (0)