Skip to content

Commit 4d04c24

Browse files
authored
Better MaxOsVersion tests, more WindowsVersions (dotnet/extensions#2728)
\n\nCommit migrated from dotnet/extensions@ec15595
1 parent f3ac551 commit 4d04c24

File tree

5 files changed

+28
-13
lines changed

5 files changed

+28
-13
lines changed

src/Testing/ref/Microsoft.AspNetCore.Testing.net46.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -326,9 +326,11 @@ public static partial class TestPlatformHelper
326326
public static partial class WindowsVersions
327327
{
328328
public const string Win10 = "10.0";
329+
public const string Win10_19H1 = "10.0.18362";
329330
public const string Win10_19H2 = "10.0.18363";
330-
public const string Win10_20H1 = "10.0.18990";
331+
public const string Win10_20H1 = "10.0.19033";
331332
public const string Win10_RS4 = "10.0.17134";
333+
public const string Win10_RS5 = "10.0.17763";
332334
public const string Win2008R2 = "6.1";
333335
public const string Win7 = "6.1";
334336
public const string Win8 = "6.2";

src/Testing/ref/Microsoft.AspNetCore.Testing.netstandard2.0.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -326,9 +326,11 @@ public static partial class TestPlatformHelper
326326
public static partial class WindowsVersions
327327
{
328328
public const string Win10 = "10.0";
329+
public const string Win10_19H1 = "10.0.18362";
329330
public const string Win10_19H2 = "10.0.18363";
330-
public const string Win10_20H1 = "10.0.18990";
331+
public const string Win10_20H1 = "10.0.19033";
331332
public const string Win10_RS4 = "10.0.17134";
333+
public const string Win10_RS5 = "10.0.17763";
332334
public const string Win2008R2 = "6.1";
333335
public const string Win7 = "6.1";
334336
public const string Win8 = "6.2";

src/Testing/src/xunit/MaximumOSVersionAttribute.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,8 @@ internal MaximumOSVersionAttribute(OperatingSystems targetOS, Version maxVersion
3434
_targetOS = targetOS;
3535
_maxVersion = maxVersion;
3636
_currentOS = currentOS;
37-
_currentVersion = currentVersion;
37+
// We drop the 4th field because it is not significant and it messes up the comparisons.
38+
_currentVersion = new Version(currentVersion.Major, currentVersion.Minor, currentVersion.Build);
3839

3940
// Do not skip other OS's, Use OSSkipConditionAttribute or a separate MaximumOsVersionAttribute for that.
4041
_skip = _targetOS == _currentOS && _maxVersion < _currentVersion;

src/Testing/src/xunit/WindowsVersions.cs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,24 @@ public static class WindowsVersions
2323
/// </summary>
2424
public const string Win10_RS4 = "10.0.17134";
2525

26+
/// <summary>
27+
/// 1809, RS5, 17763
28+
/// </summary>
29+
public const string Win10_RS5 = "10.0.17763";
30+
31+
/// <summary>
32+
/// 1903, 19H1, 18362
33+
/// </summary>
34+
public const string Win10_19H1 = "10.0.18362";
35+
2636
/// <summary>
2737
/// 1909, 19H2, 18363
2838
/// </summary>
2939
public const string Win10_19H2 = "10.0.18363";
3040

3141
/// <summary>
32-
/// _, 20H2, 18990
42+
/// 2004, 20H1, 19033
3343
/// </summary>
34-
public const string Win10_20H1 = "10.0.18990";
44+
public const string Win10_20H1 = "10.0.19033";
3545
}
3646
}

src/Testing/test/MaximumOSVersionAttributeTest.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ public void DoesNotSkip_EarlierVersions()
3131
{
3232
var osSkipAttribute = new MaximumOSVersionAttribute(
3333
OperatingSystems.Windows,
34-
new Version("2.5"),
34+
new Version("2.5.9"),
3535
OperatingSystems.Windows,
36-
new Version("2.0"));
36+
new Version("2.0.10.12"));
3737

3838
Assert.True(osSkipAttribute.IsMet);
3939
}
@@ -43,9 +43,9 @@ public void DoesNotSkip_SameVersion()
4343
{
4444
var osSkipAttribute = new MaximumOSVersionAttribute(
4545
OperatingSystems.Windows,
46-
new Version("2.5"),
46+
new Version("2.5.10"),
4747
OperatingSystems.Windows,
48-
new Version("2.5"));
48+
new Version("2.5.10.12"));
4949

5050
Assert.True(osSkipAttribute.IsMet);
5151
}
@@ -55,9 +55,9 @@ public void Skip_LaterVersion()
5555
{
5656
var osSkipAttribute = new MaximumOSVersionAttribute(
5757
OperatingSystems.Windows,
58-
new Version("2.5"),
58+
new Version("2.5.11"),
5959
OperatingSystems.Windows,
60-
new Version("3.0"));
60+
new Version("3.0.10.12"));
6161

6262
Assert.False(osSkipAttribute.IsMet);
6363
}
@@ -67,9 +67,9 @@ public void DoesNotSkip_WhenOnlyVersionsMatch()
6767
{
6868
var osSkipAttribute = new MaximumOSVersionAttribute(
6969
OperatingSystems.Windows,
70-
new Version("2.5"),
70+
new Version("2.5.10.12"),
7171
OperatingSystems.Linux,
72-
new Version("2.5"));
72+
new Version("2.5.10.12"));
7373

7474
Assert.True(osSkipAttribute.IsMet);
7575
}

0 commit comments

Comments
 (0)