Skip to content

Commit 1fe7f4a

Browse files
committed
Fix new warnings
1 parent 3880ef1 commit 1fe7f4a

14 files changed

+123
-101
lines changed

Benchmarks/.editorconfig

+10
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
##########################################
2+
# .NET
3+
##########################################
4+
5+
[*.cs]
6+
# IDE0005: Remove unnecessary usings/imports.
7+
# Justification: There is a bug in the .NET SDK that requires GenerateDocumentationFile to be enabled for IDE0005 to work.
8+
# https://github.com/dotnet/aspnetcore/issues/47912
9+
dotnet_diagnostic.IDE0005.severity = none
10+
111
##########################################
212
# StyleCop
313
##########################################

Source/.editorconfig

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
##########################################
2-
# .NET Formatting Conventions
2+
# .NET
33
##########################################
44

55
[*.cs]

Source/Common/HashCode.cs

+5-5
Original file line numberDiff line numberDiff line change
@@ -79,15 +79,15 @@ public static HashCode OfEach<T>(IEnumerable<T>? items) =>
7979
/// <typeparam name="T">The type of the item.</typeparam>
8080
/// <param name="item">The item.</param>
8181
/// <returns>The new hash code.</returns>
82-
public HashCode And<T>(T? item) => new(CombineHashCodes(this.value, GetHashCode(item)));
82+
public readonly HashCode And<T>(T? item) => new(CombineHashCodes(this.value, GetHashCode(item)));
8383

8484
/// <summary>
8585
/// Adds the hash code of the specified items in the collection.
8686
/// </summary>
8787
/// <typeparam name="T">The type of the items.</typeparam>
8888
/// <param name="items">The collection.</param>
8989
/// <returns>The new hash code.</returns>
90-
public HashCode AndEach<T>(IEnumerable<T>? items)
90+
public readonly HashCode AndEach<T>(IEnumerable<T>? items)
9191
{
9292
if (items is null)
9393
{
@@ -98,10 +98,10 @@ public HashCode AndEach<T>(IEnumerable<T>? items)
9898
}
9999

100100
/// <inheritdoc />
101-
public bool Equals(HashCode other) => this.value.Equals(other.value);
101+
public readonly bool Equals(HashCode other) => this.value.Equals(other.value);
102102

103103
/// <inheritdoc />
104-
public override bool Equals(object? obj)
104+
public override readonly bool Equals(object? obj)
105105
{
106106
if (obj is HashCode hashCode)
107107
{
@@ -119,7 +119,7 @@ public override bool Equals(object? obj)
119119
/// </returns>
120120
/// <exception cref="NotSupportedException">Implicitly convert this struct to an <see cref="int" /> to get the hash code.</exception>
121121
[EditorBrowsable(EditorBrowsableState.Never)]
122-
public override int GetHashCode() =>
122+
public override readonly int GetHashCode() =>
123123
#pragma warning disable CA1065 // Do not raise exceptions in unexpected locations
124124
throw new NotSupportedException("Implicitly convert this struct to an int to get the hash code.");
125125
#pragma warning restore CA1065 // Do not raise exceptions in unexpected locations

Source/Common/Thing.Partial.cs

+2
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ namespace Schema.NET;
55
/// <summary>
66
/// The most generic type of item.
77
/// </summary>
8+
#pragma warning disable CA1040 // Avoid empty interfaces
89
public partial interface IThing
10+
#pragma warning restore CA1040 // Avoid empty interfaces
911
{
1012
}
1113

Tests/.editorconfig

+25-20
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,28 @@
1+
##########################################
2+
# .NET
3+
##########################################
4+
5+
[*.cs]
6+
# CA1014: Mark assemblies with CLSCompliant.
7+
# Justification: Not needed here
8+
# https://docs.microsoft.com/en-us/visualstudio/code-quality/ca1014
9+
dotnet_diagnostic.CA1014.severity = none
10+
11+
# CA1062: Validate arguments of public methods
12+
# Justification: xUnit Theory method parameters don't need to be validated
13+
# https://docs.microsoft.com/en-us/visualstudio/code-quality/ca1062
14+
dotnet_diagnostic.CA1062.severity = none
15+
16+
# CA1707: Identifiers should not contain underscores
17+
# Justification: Test method names contain underscores
18+
# https://docs.microsoft.com/en-us/visualstudio/code-quality/ca1707
19+
dotnet_diagnostic.CA1707.severity = none
20+
21+
# IDE0005: Remove unnecessary usings/imports.
22+
# Justification: There is a bug in the .NET SDK that requires GenerateDocumentationFile to be enabled for IDE0005 to work.
23+
# https://github.com/dotnet/aspnetcore/issues/47912
24+
dotnet_diagnostic.IDE0005.severity = none
25+
126
##########################################
227
# StyleCop
328
##########################################
@@ -28,23 +53,3 @@ dotnet_diagnostic.SA1602.severity = none
2853
# Justification: Comments turned off
2954
# https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/SA1633.md
3055
dotnet_diagnostic.SA1633.severity = none
31-
32-
##########################################
33-
# Custom
34-
##########################################
35-
36-
[*.cs]
37-
# CA1014: Mark assemblies with CLSCompliant.
38-
# Justification: Not needed here
39-
# https://docs.microsoft.com/en-us/visualstudio/code-quality/ca1014
40-
dotnet_diagnostic.CA1014.severity = none
41-
42-
# CA1062: Validate arguments of public methods
43-
# Justification: xUnit Theory method parameters don't need to be validated
44-
# https://docs.microsoft.com/en-us/visualstudio/code-quality/ca1062
45-
dotnet_diagnostic.CA1062.severity = none
46-
47-
# CA1707: Identifiers should not contain underscores
48-
# Justification: Test method names contain underscores
49-
# https://docs.microsoft.com/en-us/visualstudio/code-quality/ca1707
50-
dotnet_diagnostic.CA1707.severity = none

Tests/Schema.NET.Test/OneOrManyTest.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ public void Constructor_NullList_ThrowsArgumentNullException() =>
6060
public void Count_DefaultStructConstructor_ReturnsZero() => Assert.Empty(default(OneOrMany<int>));
6161

6262
[Fact]
63-
public void Count_DefaultClassConstructor_ReturnsZero() => Assert.Empty(default(OneOrMany<string>));
63+
public void Count_DefaultClassConstructor_ReturnsZero() => Assert.Empty(default(OneOrMany<string>)!);
6464

6565
[Fact]
6666
public void Count_NullItem_ReturnsZero() => Assert.Empty(new OneOrMany<int?>((int?)null));

Tests/Schema.NET.Test/Values2Test.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public void Constructor_Value1Passed_OnlyValue1HasValue()
1515
Assert.True(values.HasValue1);
1616
Assert.Single(values.Value1);
1717
Assert.False(values.HasValue2);
18-
Assert.Empty(values.Value2);
18+
Assert.Empty(values.Value2!);
1919
Assert.Equal(new List<object>() { 1 }, values.Cast<object>().ToList());
2020
}
2121

@@ -88,7 +88,7 @@ public void ImplicitConversionOperator_Value1Passed_OnlyValue1HasValue()
8888
Assert.True(values.HasValue1);
8989
Assert.Single(values.Value1);
9090
Assert.False(values.HasValue2);
91-
Assert.Empty(values.Value2);
91+
Assert.Empty(values.Value2!);
9292
Assert.Equal(new List<object>() { 1 }, values.Cast<object>().ToList());
9393
}
9494

@@ -112,7 +112,7 @@ public void ImplicitConversionOperator_Value1ListPassed_OnlyValue1HasValue()
112112
Assert.True(values.HasValue1);
113113
Assert.Equal(2, values.Value1.Count);
114114
Assert.False(values.HasValue2);
115-
Assert.Empty(values.Value2);
115+
Assert.Empty(values.Value2!);
116116
Assert.Equal(new List<object>() { 1, 2 }, values.Cast<object>().ToList());
117117
}
118118

Tests/Schema.NET.Test/Values3Test.cs

+6-6
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public void Constructor_Value1Passed_OnlyValue1HasValue()
1515
Assert.True(values.HasValue1);
1616
Assert.Single(values.Value1);
1717
Assert.False(values.HasValue2);
18-
Assert.Empty(values.Value2);
18+
Assert.Empty(values.Value2!);
1919
Assert.Equal(new List<object>() { 1 }, values.Cast<object>().ToList());
2020
}
2121

@@ -39,7 +39,7 @@ public void Constructor_Value3Passed_OnlyValue3HasValue()
3939
Assert.False(values.HasValue1);
4040
Assert.Empty(values.Value1);
4141
Assert.False(values.HasValue2);
42-
Assert.Empty(values.Value2);
42+
Assert.Empty(values.Value2!);
4343
Assert.True(values.HasValue3);
4444
Assert.Single(values.Value3);
4545
Assert.Equal(new List<object>() { DayOfWeek.Friday }, values.Cast<object>().ToList());
@@ -119,7 +119,7 @@ public void ImplicitConversionOperator_Value1Passed_OnlyValue1HasValue()
119119
Assert.True(values.HasValue1);
120120
Assert.Single(values.Value1);
121121
Assert.False(values.HasValue2);
122-
Assert.Empty(values.Value2);
122+
Assert.Empty(values.Value2!);
123123
Assert.Equal(new List<object>() { 1 }, values.Cast<object>().ToList());
124124
}
125125

@@ -143,7 +143,7 @@ public void ImplicitConversionOperator_Value3Passed_OnlyValue3HasValue()
143143
Assert.False(values.HasValue1);
144144
Assert.Empty(values.Value1);
145145
Assert.False(values.HasValue2);
146-
Assert.Empty(values.Value2);
146+
Assert.Empty(values.Value2!);
147147
Assert.True(values.HasValue3);
148148
Assert.Single(values.Value3);
149149
Assert.Equal(new List<object>() { DayOfWeek.Friday }, values.Cast<object>().ToList());
@@ -157,7 +157,7 @@ public void ImplicitConversionOperator_Value1CollectionPassed_OnlyValue1HasValue
157157
Assert.True(values.HasValue1);
158158
Assert.Equal(2, values.Value1.Count);
159159
Assert.False(values.HasValue2);
160-
Assert.Empty(values.Value2);
160+
Assert.Empty(values.Value2!);
161161
Assert.Equal(new List<object>() { 1, 2 }, values.Cast<object>().ToList());
162162
}
163163

@@ -181,7 +181,7 @@ public void ImplicitConversionOperator_Value3CollectionPassed_OnlyValue3HasValue
181181
Assert.False(values.HasValue1);
182182
Assert.Empty(values.Value1);
183183
Assert.False(values.HasValue2);
184-
Assert.Empty(values.Value2);
184+
Assert.Empty(values.Value2!);
185185
Assert.True(values.HasValue3);
186186
Assert.Equal(2, values.Value3.Count);
187187
Assert.Equal(new List<object>() { DayOfWeek.Friday, DayOfWeek.Monday }, values.Cast<object>().ToList());

Tests/Schema.NET.Test/Values4Test.cs

+9-9
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public void Constructor_Value1Passed_OnlyValue1HasValue()
1515
Assert.True(values.HasValue1);
1616
Assert.Single(values.Value1);
1717
Assert.False(values.HasValue2);
18-
Assert.Empty(values.Value2);
18+
Assert.Empty(values.Value2!);
1919
Assert.Equal(new List<object>() { 1 }, values.Cast<object>().ToList());
2020
}
2121

@@ -39,7 +39,7 @@ public void Constructor_Value3Passed_OnlyValue3HasValue()
3939
Assert.False(values.HasValue1);
4040
Assert.Empty(values.Value1);
4141
Assert.False(values.HasValue2);
42-
Assert.Empty(values.Value2);
42+
Assert.Empty(values.Value2!);
4343
Assert.True(values.HasValue3);
4444
Assert.Single(values.Value3);
4545
Assert.Equal(new List<object>() { DayOfWeek.Friday }, values.Cast<object>().ToList());
@@ -53,7 +53,7 @@ public void Constructor_Value4Passed_OnlyValue4HasValue()
5353
Assert.False(values.HasValue1);
5454
Assert.Empty(values.Value1);
5555
Assert.False(values.HasValue2);
56-
Assert.Empty(values.Value2);
56+
Assert.Empty(values.Value2!);
5757
Assert.False(values.HasValue3);
5858
Assert.Empty(values.Value3);
5959
Assert.True(values.HasValue4);
@@ -149,7 +149,7 @@ public void ImplicitConversionOperator_Value1Passed_OnlyValue1HasValue()
149149
Assert.True(values.HasValue1);
150150
Assert.Single(values.Value1);
151151
Assert.False(values.HasValue2);
152-
Assert.Empty(values.Value2);
152+
Assert.Empty(values.Value2!);
153153
Assert.Equal(new List<object>() { 1 }, values.Cast<object>().ToList());
154154
}
155155

@@ -173,7 +173,7 @@ public void ImplicitConversionOperator_Value3Passed_OnlyValue3HasValue()
173173
Assert.False(values.HasValue1);
174174
Assert.Empty(values.Value1);
175175
Assert.False(values.HasValue2);
176-
Assert.Empty(values.Value2);
176+
Assert.Empty(values.Value2!);
177177
Assert.True(values.HasValue3);
178178
Assert.Single(values.Value3);
179179
Assert.Equal(new List<object>() { DayOfWeek.Friday }, values.Cast<object>().ToList());
@@ -187,7 +187,7 @@ public void ImplicitConversionOperator_Value4Passed_OnlyValue4HasValue()
187187
Assert.False(values.HasValue1);
188188
Assert.Empty(values.Value1);
189189
Assert.False(values.HasValue2);
190-
Assert.Empty(values.Value2);
190+
Assert.Empty(values.Value2!);
191191
Assert.False(values.HasValue3);
192192
Assert.Empty(values.Value3);
193193
Assert.True(values.HasValue4);
@@ -204,7 +204,7 @@ public void ImplicitConversionOperator_Value1CollectionPassed_OnlyValue1HasValue
204204
Assert.True(values.HasValue1);
205205
Assert.Equal(2, values.Value1.Count);
206206
Assert.False(values.HasValue2);
207-
Assert.Empty(values.Value2);
207+
Assert.Empty(values.Value2!);
208208
Assert.Equal(new List<object>() { 1, 2 }, values.Cast<object>().ToList());
209209
}
210210

@@ -228,7 +228,7 @@ public void ImplicitConversionOperator_Value3CollectionPassed_OnlyValue3HasValue
228228
Assert.False(values.HasValue1);
229229
Assert.Empty(values.Value1);
230230
Assert.False(values.HasValue2);
231-
Assert.Empty(values.Value2);
231+
Assert.Empty(values.Value2!);
232232
Assert.True(values.HasValue3);
233233
Assert.Equal(2, values.Value3.Count);
234234
Assert.Equal(
@@ -244,7 +244,7 @@ public void ImplicitConversionOperator_Value4CollectionPassed_OnlyValue4HasValue
244244
Assert.False(values.HasValue1);
245245
Assert.Empty(values.Value1);
246246
Assert.False(values.HasValue2);
247-
Assert.Empty(values.Value2);
247+
Assert.Empty(values.Value2!);
248248
Assert.False(values.HasValue3);
249249
Assert.Empty(values.Value3);
250250
Assert.True(values.HasValue4);

0 commit comments

Comments
 (0)