From 5edb92972d816b93bc1bf138936f9964aedb3e75 Mon Sep 17 00:00:00 2001 From: Daniel Widdis Date: Fri, 29 May 2026 22:26:13 +0000 Subject: [PATCH 1/2] Support NetBSD in `@EnabledOnOs` and `@DisabledOnOs` Signed-off-by: Daniel Widdis --- .../release-notes/release-notes-6.2.0-M1.adoc | 1 + .../java/org/junit/jupiter/api/condition/OS.java | 14 +++++++++++++- .../condition/DisabledOnOsConditionTests.java | 14 ++++++++++++-- .../condition/DisabledOnOsIntegrationTests.java | 13 +++++++++++-- .../api/condition/EnabledOnOsConditionTests.java | 14 ++++++++++++-- .../condition/EnabledOnOsIntegrationTests.java | 16 ++++++++++++++-- .../org/junit/jupiter/api/condition/OSTests.java | 6 ++++++ 7 files changed, 69 insertions(+), 9 deletions(-) diff --git a/documentation/modules/ROOT/partials/release-notes/release-notes-6.2.0-M1.adoc b/documentation/modules/ROOT/partials/release-notes/release-notes-6.2.0-M1.adoc index 9f3d6b92d9f3..46b9099310a0 100644 --- a/documentation/modules/ROOT/partials/release-notes/release-notes-6.2.0-M1.adoc +++ b/documentation/modules/ROOT/partials/release-notes/release-notes-6.2.0-M1.adoc @@ -48,6 +48,7 @@ repository on GitHub. [[v6.2.0-M1-junit-jupiter-new-features-and-improvements]] ==== New Features and Improvements +* Added `OS.NETBSD` enum constant for use with `@EnabledOnOs` and `@DisabledOnOs`. * Failures caused by `@Timeout` expirations now include a hint about enabling xref:writing-tests/timeouts.adoc#debugging-thread-dump[thread dumps]. diff --git a/junit-jupiter-api/src/main/java/org/junit/jupiter/api/condition/OS.java b/junit-jupiter-api/src/main/java/org/junit/jupiter/api/condition/OS.java index 26e5635ad643..586c8a3e4c60 100644 --- a/junit-jupiter-api/src/main/java/org/junit/jupiter/api/condition/OS.java +++ b/junit-jupiter-api/src/main/java/org/junit/jupiter/api/condition/OS.java @@ -33,6 +33,7 @@ * @see #FREEBSD * @see #LINUX * @see #MAC + * @see #NETBSD * @see #OPENBSD * @see #SOLARIS * @see #WINDOWS @@ -69,6 +70,14 @@ public enum OS { */ MAC, + /** + * NetBSD operating system. + * + * @since 6.2 + */ + @API(status = STABLE, since = "6.2") + NETBSD, + /** * OpenBSD operating system. * @@ -89,7 +98,7 @@ public enum OS { /** * An operating system other than {@link #AIX}, {@link #FREEBSD}, {@link #LINUX}, - * {@link #MAC}, {@link #OPENBSD}, {@link #SOLARIS}, or {@link #WINDOWS}. + * {@link #MAC}, {@link #NETBSD}, {@link #OPENBSD}, {@link #SOLARIS}, or {@link #WINDOWS}. */ OTHER; @@ -134,6 +143,9 @@ public enum OS { if (osName.contains("mac")) { return MAC; } + if (osName.contains("netbsd")) { + return NETBSD; + } if (osName.contains("openbsd")) { return OPENBSD; } diff --git a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsConditionTests.java b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsConditionTests.java index 73a857058feb..1d685379521c 100644 --- a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsConditionTests.java +++ b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsConditionTests.java @@ -15,6 +15,7 @@ import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onFreebsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onLinux; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onMac; +import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onNetbsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onOpenbsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onSolaris; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onWindows; @@ -129,6 +130,15 @@ void openbsd() { assertDisabledOnCurrentOsIf(onOpenbsd()); } + /** + * @see DisabledOnOsIntegrationTests#netbsd() + */ + @Test + void netbsd() { + evaluateCondition(); + assertDisabledOnCurrentOsIf(onNetbsd()); + } + /** * @see DisabledOnOsIntegrationTests#windows() */ @@ -153,8 +163,8 @@ void solaris() { @Test void other() { evaluateCondition(); - assertDisabledOnCurrentOsIf( - !(onAix() || onFreebsd() || onLinux() || onMac() || onOpenbsd() || onSolaris() || onWindows())); + assertDisabledOnCurrentOsIf(!(onAix() || onFreebsd() || onLinux() || onMac() || onNetbsd() || onOpenbsd() + || onSolaris() || onWindows())); } /** diff --git a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsIntegrationTests.java b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsIntegrationTests.java index 203b488dfb74..45fe548a5e78 100644 --- a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsIntegrationTests.java +++ b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsIntegrationTests.java @@ -18,6 +18,7 @@ import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onFreebsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onLinux; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onMac; +import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onNetbsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onOpenbsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onSolaris; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onWindows; @@ -25,6 +26,7 @@ import static org.junit.jupiter.api.condition.OS.FREEBSD; import static org.junit.jupiter.api.condition.OS.LINUX; import static org.junit.jupiter.api.condition.OS.MAC; +import static org.junit.jupiter.api.condition.OS.NETBSD; import static org.junit.jupiter.api.condition.OS.OPENBSD; import static org.junit.jupiter.api.condition.OS.OTHER; import static org.junit.jupiter.api.condition.OS.SOLARIS; @@ -57,7 +59,7 @@ void missingOsAndArchitectureDeclaration() { } @Test - @DisabledOnOs(value = { AIX, FREEBSD, LINUX, MAC, OPENBSD, WINDOWS, SOLARIS, + @DisabledOnOs(value = { AIX, FREEBSD, LINUX, MAC, NETBSD, OPENBSD, WINDOWS, SOLARIS, OTHER }, disabledReason = "Disabled on every OS") void disabledOnEveryOs() { fail("should be disabled"); @@ -99,6 +101,12 @@ void openbsd() { assertFalse(onOpenbsd()); } + @Test + @DisabledOnOs(NETBSD) + void netbsd() { + assertFalse(onNetbsd()); + } + @Test @DisabledOnOs(WINDOWS) void windows() { @@ -114,7 +122,8 @@ void solaris() { @Test @DisabledOnOs(OTHER) void other() { - assertTrue(onAix() || onFreebsd() || onLinux() || onMac() || onOpenbsd() || onSolaris() || onWindows()); + assertTrue( + onAix() || onFreebsd() || onLinux() || onMac() || onNetbsd() || onOpenbsd() || onSolaris() || onWindows()); } @Test diff --git a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsConditionTests.java b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsConditionTests.java index d4b75bd8ebde..205c29667c8f 100644 --- a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsConditionTests.java +++ b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsConditionTests.java @@ -15,6 +15,7 @@ import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onFreebsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onLinux; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onMac; +import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onNetbsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onOpenbsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onSolaris; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onWindows; @@ -128,6 +129,15 @@ void openbsd() { assertEnabledOnCurrentOsIf(onOpenbsd()); } + /** + * @see EnabledOnOsIntegrationTests#netbsd() + */ + @Test + void netbsd() { + evaluateCondition(); + assertEnabledOnCurrentOsIf(onNetbsd()); + } + /** * @see EnabledOnOsIntegrationTests#windows() */ @@ -152,8 +162,8 @@ void solaris() { @Test void other() { evaluateCondition(); - assertEnabledOnCurrentOsIf( - !(onAix() || onFreebsd() || onLinux() || onMac() || onOpenbsd() || onSolaris() || onWindows())); + assertEnabledOnCurrentOsIf(!(onAix() || onFreebsd() || onLinux() || onMac() || onNetbsd() || onOpenbsd() + || onSolaris() || onWindows())); assertCustomDisabledReasonIs("Disabled on almost every OS"); } diff --git a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsIntegrationTests.java b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsIntegrationTests.java index 625d3008afe7..8e904cf80b98 100644 --- a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsIntegrationTests.java +++ b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsIntegrationTests.java @@ -16,6 +16,7 @@ import static org.junit.jupiter.api.condition.OS.FREEBSD; import static org.junit.jupiter.api.condition.OS.LINUX; import static org.junit.jupiter.api.condition.OS.MAC; +import static org.junit.jupiter.api.condition.OS.NETBSD; import static org.junit.jupiter.api.condition.OS.OPENBSD; import static org.junit.jupiter.api.condition.OS.OTHER; import static org.junit.jupiter.api.condition.OS.SOLARIS; @@ -52,7 +53,7 @@ void missingOsAndArchitectureDeclaration() { } @Test - @EnabledOnOs({ AIX, FREEBSD, LINUX, MAC, OPENBSD, WINDOWS, SOLARIS, OTHER }) + @EnabledOnOs({ AIX, FREEBSD, LINUX, MAC, NETBSD, OPENBSD, WINDOWS, SOLARIS, OTHER }) void enabledOnEveryOs() { } @@ -92,6 +93,12 @@ void openbsd() { assertTrue(onOpenbsd()); } + @Test + @EnabledOnOs(NETBSD) + void netbsd() { + assertTrue(onNetbsd()); + } + @Test @EnabledOnOs(WINDOWS) void windows() { @@ -107,7 +114,8 @@ void solaris() { @Test @EnabledOnOs(value = OTHER, disabledReason = "Disabled on almost every OS") void other() { - assertFalse(onAix() || onFreebsd() || onLinux() || onMac() || onOpenbsd() || onSolaris() || onWindows()); + assertFalse( + onAix() || onFreebsd() || onLinux() || onMac() || onNetbsd() || onOpenbsd() || onSolaris() || onWindows()); } @Test @@ -184,6 +192,10 @@ static boolean onMac() { return OS_NAME.contains("mac"); } + static boolean onNetbsd() { + return OS_NAME.contains("netbsd"); + } + static boolean onOpenbsd() { return OS_NAME.contains("openbsd"); } diff --git a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/OSTests.java b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/OSTests.java index b8919ce8e7a7..34fc1e04bb92 100644 --- a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/OSTests.java +++ b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/OSTests.java @@ -65,6 +65,12 @@ void openbsd(String name) { assertEquals(OS.OPENBSD, OS.parse(name)); } + @ParameterizedTest + @ValueSource(strings = { "NETBSD", "NetBSD" }) + void netbsd(String name) { + assertEquals(OS.NETBSD, OS.parse(name)); + } + @ParameterizedTest @ValueSource(strings = { "SOLARIS", "SunOS" }) void solaris(String name) { From 7d779fcec3195dbea3b6ef6af9d9a987cfdef1e8 Mon Sep 17 00:00:00 2001 From: Daniel Widdis Date: Fri, 29 May 2026 22:50:36 +0000 Subject: [PATCH 2/2] Add DragonFly BSD to OS condition Signed-off-by: Daniel Widdis --- .../release-notes/release-notes-6.2.0-M1.adoc | 3 ++- .../org/junit/jupiter/api/condition/OS.java | 17 +++++++++++++++-- .../condition/DisabledOnOsConditionTests.java | 14 ++++++++++++-- .../condition/DisabledOnOsIntegrationTests.java | 14 +++++++++++--- .../condition/EnabledOnOsConditionTests.java | 14 ++++++++++++-- .../condition/EnabledOnOsIntegrationTests.java | 17 ++++++++++++++--- .../junit/jupiter/api/condition/OSTests.java | 6 ++++++ 7 files changed, 72 insertions(+), 13 deletions(-) diff --git a/documentation/modules/ROOT/partials/release-notes/release-notes-6.2.0-M1.adoc b/documentation/modules/ROOT/partials/release-notes/release-notes-6.2.0-M1.adoc index 46b9099310a0..04a19229aee8 100644 --- a/documentation/modules/ROOT/partials/release-notes/release-notes-6.2.0-M1.adoc +++ b/documentation/modules/ROOT/partials/release-notes/release-notes-6.2.0-M1.adoc @@ -48,7 +48,8 @@ repository on GitHub. [[v6.2.0-M1-junit-jupiter-new-features-and-improvements]] ==== New Features and Improvements -* Added `OS.NETBSD` enum constant for use with `@EnabledOnOs` and `@DisabledOnOs`. +* Added `OS.NETBSD` and `OS.DRAGONFLYBSD` enum constants for use with `@EnabledOnOs` + and `@DisabledOnOs`. * Failures caused by `@Timeout` expirations now include a hint about enabling xref:writing-tests/timeouts.adoc#debugging-thread-dump[thread dumps]. diff --git a/junit-jupiter-api/src/main/java/org/junit/jupiter/api/condition/OS.java b/junit-jupiter-api/src/main/java/org/junit/jupiter/api/condition/OS.java index 586c8a3e4c60..569204eaffe6 100644 --- a/junit-jupiter-api/src/main/java/org/junit/jupiter/api/condition/OS.java +++ b/junit-jupiter-api/src/main/java/org/junit/jupiter/api/condition/OS.java @@ -30,6 +30,7 @@ * * @since 5.1 * @see #AIX + * @see #DRAGONFLYBSD * @see #FREEBSD * @see #LINUX * @see #MAC @@ -52,6 +53,14 @@ public enum OS { @API(status = STABLE, since = "5.3") AIX, + /** + * DragonFly BSD operating system. + * + * @since 6.2 + */ + @API(status = STABLE, since = "6.2") + DRAGONFLYBSD, + /** * FreeBSD operating system. * @@ -97,8 +106,9 @@ public enum OS { WINDOWS, /** - * An operating system other than {@link #AIX}, {@link #FREEBSD}, {@link #LINUX}, - * {@link #MAC}, {@link #NETBSD}, {@link #OPENBSD}, {@link #SOLARIS}, or {@link #WINDOWS}. + * An operating system other than {@link #AIX}, {@link #DRAGONFLYBSD}, + * {@link #FREEBSD}, {@link #LINUX}, {@link #MAC}, {@link #NETBSD}, + * {@link #OPENBSD}, {@link #SOLARIS}, or {@link #WINDOWS}. */ OTHER; @@ -134,6 +144,9 @@ public enum OS { if (osName.contains("aix")) { return AIX; } + if (osName.contains("dragonflybsd")) { + return DRAGONFLYBSD; + } if (osName.contains("freebsd")) { return FREEBSD; } diff --git a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsConditionTests.java b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsConditionTests.java index 1d685379521c..541f725a4031 100644 --- a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsConditionTests.java +++ b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsConditionTests.java @@ -12,6 +12,7 @@ import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onAix; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onArchitecture; +import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onDragonflybsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onFreebsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onLinux; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onMac; @@ -85,6 +86,15 @@ void aix() { assertDisabledOnCurrentOsIf(onAix()); } + /** + * @see DisabledOnOsIntegrationTests#dragonflybsd() + */ + @Test + void dragonflybsd() { + evaluateCondition(); + assertDisabledOnCurrentOsIf(onDragonflybsd()); + } + /** * @see DisabledOnOsIntegrationTests#freebsd() */ @@ -163,8 +173,8 @@ void solaris() { @Test void other() { evaluateCondition(); - assertDisabledOnCurrentOsIf(!(onAix() || onFreebsd() || onLinux() || onMac() || onNetbsd() || onOpenbsd() - || onSolaris() || onWindows())); + assertDisabledOnCurrentOsIf(!(onAix() || onDragonflybsd() || onFreebsd() || onLinux() || onMac() || onNetbsd() + || onOpenbsd() || onSolaris() || onWindows())); } /** diff --git a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsIntegrationTests.java b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsIntegrationTests.java index 45fe548a5e78..af0183799d23 100644 --- a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsIntegrationTests.java +++ b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledOnOsIntegrationTests.java @@ -15,6 +15,7 @@ import static org.junit.jupiter.api.Assertions.fail; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onAix; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onArchitecture; +import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onDragonflybsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onFreebsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onLinux; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onMac; @@ -23,6 +24,7 @@ import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onSolaris; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onWindows; import static org.junit.jupiter.api.condition.OS.AIX; +import static org.junit.jupiter.api.condition.OS.DRAGONFLYBSD; import static org.junit.jupiter.api.condition.OS.FREEBSD; import static org.junit.jupiter.api.condition.OS.LINUX; import static org.junit.jupiter.api.condition.OS.MAC; @@ -59,7 +61,7 @@ void missingOsAndArchitectureDeclaration() { } @Test - @DisabledOnOs(value = { AIX, FREEBSD, LINUX, MAC, NETBSD, OPENBSD, WINDOWS, SOLARIS, + @DisabledOnOs(value = { AIX, DRAGONFLYBSD, FREEBSD, LINUX, MAC, NETBSD, OPENBSD, WINDOWS, SOLARIS, OTHER }, disabledReason = "Disabled on every OS") void disabledOnEveryOs() { fail("should be disabled"); @@ -71,6 +73,12 @@ void aix() { assertFalse(onAix()); } + @Test + @DisabledOnOs(DRAGONFLYBSD) + void dragonflybsd() { + assertFalse(onDragonflybsd()); + } + @Test @DisabledOnOs(FREEBSD) void freebsd() { @@ -122,8 +130,8 @@ void solaris() { @Test @DisabledOnOs(OTHER) void other() { - assertTrue( - onAix() || onFreebsd() || onLinux() || onMac() || onNetbsd() || onOpenbsd() || onSolaris() || onWindows()); + assertTrue(onAix() || onDragonflybsd() || onFreebsd() || onLinux() || onMac() || onNetbsd() || onOpenbsd() + || onSolaris() || onWindows()); } @Test diff --git a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsConditionTests.java b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsConditionTests.java index 205c29667c8f..c00845b33e2b 100644 --- a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsConditionTests.java +++ b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsConditionTests.java @@ -12,6 +12,7 @@ import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onAix; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onArchitecture; +import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onDragonflybsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onFreebsd; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onLinux; import static org.junit.jupiter.api.condition.EnabledOnOsIntegrationTests.onMac; @@ -84,6 +85,15 @@ void aix() { assertEnabledOnCurrentOsIf(onAix()); } + /** + * @see EnabledOnOsIntegrationTests#dragonflybsd() + */ + @Test + void dragonflybsd() { + evaluateCondition(); + assertEnabledOnCurrentOsIf(onDragonflybsd()); + } + /** * @see EnabledOnOsIntegrationTests#freebsd() */ @@ -162,8 +172,8 @@ void solaris() { @Test void other() { evaluateCondition(); - assertEnabledOnCurrentOsIf(!(onAix() || onFreebsd() || onLinux() || onMac() || onNetbsd() || onOpenbsd() - || onSolaris() || onWindows())); + assertEnabledOnCurrentOsIf(!(onAix() || onDragonflybsd() || onFreebsd() || onLinux() || onMac() || onNetbsd() + || onOpenbsd() || onSolaris() || onWindows())); assertCustomDisabledReasonIs("Disabled on almost every OS"); } diff --git a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsIntegrationTests.java b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsIntegrationTests.java index 8e904cf80b98..35a2166c4965 100644 --- a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsIntegrationTests.java +++ b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/EnabledOnOsIntegrationTests.java @@ -13,6 +13,7 @@ import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.condition.OS.AIX; +import static org.junit.jupiter.api.condition.OS.DRAGONFLYBSD; import static org.junit.jupiter.api.condition.OS.FREEBSD; import static org.junit.jupiter.api.condition.OS.LINUX; import static org.junit.jupiter.api.condition.OS.MAC; @@ -53,7 +54,7 @@ void missingOsAndArchitectureDeclaration() { } @Test - @EnabledOnOs({ AIX, FREEBSD, LINUX, MAC, NETBSD, OPENBSD, WINDOWS, SOLARIS, OTHER }) + @EnabledOnOs({ AIX, DRAGONFLYBSD, FREEBSD, LINUX, MAC, NETBSD, OPENBSD, WINDOWS, SOLARIS, OTHER }) void enabledOnEveryOs() { } @@ -63,6 +64,12 @@ void aix() { assertTrue(onAix()); } + @Test + @EnabledOnOs(DRAGONFLYBSD) + void dragonflybsd() { + assertTrue(onDragonflybsd()); + } + @Test @EnabledOnOs(FREEBSD) void freebsd() { @@ -114,8 +121,8 @@ void solaris() { @Test @EnabledOnOs(value = OTHER, disabledReason = "Disabled on almost every OS") void other() { - assertFalse( - onAix() || onFreebsd() || onLinux() || onMac() || onNetbsd() || onOpenbsd() || onSolaris() || onWindows()); + assertFalse(onAix() || onDragonflybsd() || onFreebsd() || onLinux() || onMac() || onNetbsd() || onOpenbsd() + || onSolaris() || onWindows()); } @Test @@ -176,6 +183,10 @@ static boolean onAix() { return OS_NAME.contains("aix"); } + static boolean onDragonflybsd() { + return OS_NAME.contains("dragonflybsd"); + } + static boolean onArchitecture(String arch) { return ARCH.contains(arch); } diff --git a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/OSTests.java b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/OSTests.java index 34fc1e04bb92..babb171ef9f4 100644 --- a/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/OSTests.java +++ b/jupiter-tests/src/test/java/org/junit/jupiter/api/condition/OSTests.java @@ -41,6 +41,12 @@ void aix(String name) { assertEquals(OS.AIX, OS.parse(name)); } + @ParameterizedTest + @ValueSource(strings = { "DRAGONFLYBSD", "DragonFlyBSD" }) + void dragonflybsd(String name) { + assertEquals(OS.DRAGONFLYBSD, OS.parse(name)); + } + @ParameterizedTest @ValueSource(strings = { "FREEBSD", "FreeBSD" }) void freebsd(String name) {