From f65487d005a1457ecdcf85ae8573b0df824db59d Mon Sep 17 00:00:00 2001 From: JT Date: Thu, 26 Feb 2026 14:46:03 +1100 Subject: [PATCH] fix: stop Windows version attributes from excluding non-windows platforms --- .../RequiresWindowsServer2012OrAboveAttribute.cs | 5 +++++ .../RequiresWindowsServer2016OrAboveAttribute.cs | 14 ++++++-------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/source/Calamari.Testing/Requirements/RequiresWindowsServer2012OrAboveAttribute.cs b/source/Calamari.Testing/Requirements/RequiresWindowsServer2012OrAboveAttribute.cs index d9d47f4c0..c4388b5f4 100644 --- a/source/Calamari.Testing/Requirements/RequiresWindowsServer2012OrAboveAttribute.cs +++ b/source/Calamari.Testing/Requirements/RequiresWindowsServer2012OrAboveAttribute.cs @@ -9,6 +9,11 @@ public class RequiresWindowsServer2012OrAboveAttribute : TestAttribute, ITestAct { public void BeforeTest(ITest testDetails) { + // If a test truly requires Windows only, the [WindowsTest] Attribute should also be used + if (!OperatingSystem.IsWindows()) + { + return; + } if (!OperatingSystem.IsWindowsVersionAtLeast(6, 2, 9200)) { Assert.Ignore("Requires Windows Server 2012 or above"); diff --git a/source/Calamari.Testing/Requirements/RequiresWindowsServer2016OrAboveAttribute.cs b/source/Calamari.Testing/Requirements/RequiresWindowsServer2016OrAboveAttribute.cs index cb0f5d3b0..807722797 100644 --- a/source/Calamari.Testing/Requirements/RequiresWindowsServer2016OrAboveAttribute.cs +++ b/source/Calamari.Testing/Requirements/RequiresWindowsServer2016OrAboveAttribute.cs @@ -4,17 +4,15 @@ namespace Calamari.Testing.Requirements; -public class RequiresWindowsServer2016OrAboveAttribute : TestAttribute, ITestAction +public class RequiresWindowsServer2016OrAboveAttribute(string reason) : TestAttribute, ITestAction { - readonly string reason; - - public RequiresWindowsServer2016OrAboveAttribute(string reason) - { - this.reason = reason; - } - public void BeforeTest(ITest testDetails) { + // If a test truly requires Windows only, the [WindowsTest] Attribute should also be used + if (!OperatingSystem.IsWindows()) + { + return; + } if (!OperatingSystem.IsWindowsVersionAtLeast(10, 0, 14393)) { Assert.Ignore("Requires Windows Server 2016 or above: " + reason);