Skip to content

Commit 030cf9b

Browse files
committed
Add JRE.JAVA_22
Resolves #3383.
1 parent bf9e183 commit 030cf9b

File tree

12 files changed

+84
-17
lines changed

12 files changed

+84
-17
lines changed

.github/workflows/cross-version.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
strategy:
2121
fail-fast: false
2222
matrix:
23-
jdk: [19, 20, 21]
23+
jdk: [20, 21, 22]
2424
name: "OpenJDK ${{ matrix.jdk }}"
2525
runs-on: ubuntu-latest
2626
steps:

documentation/src/docs/asciidoc/release-notes/release-notes-5.10.0-RC1.adoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ JUnit repository on GitHub.
6262
* Lifecycle and thread-safety semantics are now documented for the `TempDirFactory` SPI.
6363
* The scope of applicability for `TestWatcher` implementations is now more extensively
6464
documented in the User Guide and Javadoc.
65+
* `JAVA_22` has been added to the `JRE` enum for use with JRE-based execution conditions.
6566

6667

6768
[[release-notes-5.10.0-RC1-junit-vintage]]

junit-jupiter-api/src/main/java/org/junit/jupiter/api/condition/JRE.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@
4444
* @see #JAVA_19
4545
* @see #JAVA_20
4646
* @see #JAVA_21
47+
* @see #JAVA_22
4748
* @see #OTHER
4849
* @see EnabledOnJre
4950
* @see DisabledOnJre
@@ -153,12 +154,21 @@ public enum JRE {
153154
@API(status = STABLE, since = "5.9.2")
154155
JAVA_21,
155156

157+
/**
158+
* Java 22.
159+
*
160+
* @since 5.10
161+
*/
162+
@API(status = STABLE, since = "5.9.2")
163+
JAVA_22,
164+
156165
/**
157166
* A JRE version other than {@link #JAVA_8}, {@link #JAVA_9},
158167
* {@link #JAVA_10}, {@link #JAVA_11}, {@link #JAVA_12},
159168
* {@link #JAVA_13}, {@link #JAVA_14}, {@link #JAVA_15},
160169
* {@link #JAVA_16}, {@link #JAVA_17}, {@link #JAVA_18},
161-
* {@link #JAVA_19}, {@link #JAVA_20}, or {@link #JAVA_21}.
170+
* {@link #JAVA_19}, {@link #JAVA_20}, {@link #JAVA_21}, or
171+
* {@link #JAVA_22}.
162172
*/
163173
OTHER;
164174

@@ -214,6 +224,8 @@ private static JRE determineCurrentVersion() {
214224
return JAVA_20;
215225
case 21:
216226
return JAVA_21;
227+
case 22:
228+
return JAVA_22;
217229
default:
218230
return OTHER;
219231
}

junit-jupiter-engine/src/test/java/org/junit/jupiter/api/condition/DisabledForJreRangeConditionTests.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava19;
2424
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava20;
2525
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava21;
26+
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava22;
2627
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava8;
2728
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava9;
2829

@@ -116,7 +117,7 @@ void other() {
116117
evaluateCondition();
117118
assertDisabledOnCurrentJreIf(
118119
!(onJava8() || onJava9() || onJava10() || onJava11() || onJava12() || onJava13() || onJava14() || onJava15()
119-
|| onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21()));
120+
|| onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21() || onJava22()));
120121
}
121122

122123
private void assertDisabledOnCurrentJreIf(boolean condition) {

junit-jupiter-engine/src/test/java/org/junit/jupiter/api/condition/DisabledForJreRangeIntegrationTests.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava19;
2626
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava20;
2727
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava21;
28+
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava22;
2829
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava8;
2930
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava9;
3031
import static org.junit.jupiter.api.condition.JRE.JAVA_17;
@@ -82,8 +83,9 @@ void javaMin18() {
8283
@Test
8384
@DisabledForJreRange(min = OTHER, max = OTHER)
8485
void other() {
85-
assertTrue(onJava8() || onJava9() || onJava10() || onJava11() || onJava12() || onJava13() || onJava14()
86-
|| onJava15() || onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21());
86+
assertTrue(
87+
onJava8() || onJava9() || onJava10() || onJava11() || onJava12() || onJava13() || onJava14() || onJava15()
88+
|| onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21() || onJava22());
8789
}
8890

8991
}

junit-jupiter-engine/src/test/java/org/junit/jupiter/api/condition/DisabledOnJreConditionTests.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava19;
2525
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava20;
2626
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava21;
27+
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava22;
2728
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava8;
2829
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava9;
2930

@@ -206,6 +207,15 @@ void java21() {
206207
assertDisabledOnCurrentJreIf(onJava21());
207208
}
208209

210+
/**
211+
* @see DisabledOnJreIntegrationTests#java22()
212+
*/
213+
@Test
214+
void java22() {
215+
evaluateCondition();
216+
assertDisabledOnCurrentJreIf(onJava22());
217+
}
218+
209219
/**
210220
* @see DisabledOnJreIntegrationTests#other()
211221
*/
@@ -214,7 +224,7 @@ void other() {
214224
evaluateCondition();
215225
assertDisabledOnCurrentJreIf(
216226
!(onJava8() || onJava9() || onJava10() || onJava11() || onJava12() || onJava13() || onJava14() || onJava15()
217-
|| onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21()));
227+
|| onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21() || onJava22()));
218228
}
219229

220230
private void assertDisabledOnCurrentJreIf(boolean condition) {

junit-jupiter-engine/src/test/java/org/junit/jupiter/api/condition/DisabledOnJreIntegrationTests.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava19;
2626
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava20;
2727
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava21;
28+
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava22;
2829
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava8;
2930
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava9;
3031
import static org.junit.jupiter.api.condition.JRE.JAVA_10;
@@ -39,6 +40,7 @@
3940
import static org.junit.jupiter.api.condition.JRE.JAVA_19;
4041
import static org.junit.jupiter.api.condition.JRE.JAVA_20;
4142
import static org.junit.jupiter.api.condition.JRE.JAVA_21;
43+
import static org.junit.jupiter.api.condition.JRE.JAVA_22;
4244
import static org.junit.jupiter.api.condition.JRE.JAVA_8;
4345
import static org.junit.jupiter.api.condition.JRE.JAVA_9;
4446
import static org.junit.jupiter.api.condition.JRE.OTHER;
@@ -66,7 +68,7 @@ void missingJreDeclaration() {
6668

6769
@Test
6870
@DisabledOnJre(value = { JAVA_8, JAVA_9, JAVA_10, JAVA_11, JAVA_12, JAVA_13, JAVA_14, JAVA_15, JAVA_16, JAVA_17,
69-
JAVA_18, JAVA_19, JAVA_20, JAVA_21, OTHER }, disabledReason = "Disabled on every JRE")
71+
JAVA_18, JAVA_19, JAVA_20, JAVA_21, JAVA_22, OTHER }, disabledReason = "Disabled on every JRE")
7072
void disabledOnAllJavaVersions() {
7173
fail("should be disabled");
7274
}
@@ -155,11 +157,18 @@ void java21() {
155157
assertFalse(onJava21());
156158
}
157159

160+
@Test
161+
@DisabledOnJre(JAVA_22)
162+
void java22() {
163+
assertFalse(onJava22());
164+
}
165+
158166
@Test
159167
@DisabledOnJre(OTHER)
160168
void other() {
161-
assertTrue(onJava8() || onJava9() || onJava10() || onJava11() || onJava12() || onJava13() || onJava14()
162-
|| onJava15() || onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21());
169+
assertTrue(
170+
onJava8() || onJava9() || onJava10() || onJava11() || onJava12() || onJava13() || onJava14() || onJava15()
171+
|| onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21() || onJava22());
163172
}
164173

165174
}

junit-jupiter-engine/src/test/java/org/junit/jupiter/api/condition/EnabledForJreRangeConditionTests.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava19;
2424
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava20;
2525
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava21;
26+
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava22;
2627
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava8;
2728
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava9;
2829

@@ -115,7 +116,7 @@ void other() {
115116
evaluateCondition();
116117
assertEnabledOnCurrentJreIf(
117118
!(onJava8() || onJava9() || onJava10() || onJava11() || onJava12() || onJava13() || onJava14() || onJava15()
118-
|| onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21()));
119+
|| onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21() || onJava22()));
119120
}
120121

121122
private void assertEnabledOnCurrentJreIf(boolean condition) {

junit-jupiter-engine/src/test/java/org/junit/jupiter/api/condition/EnabledForJreRangeIntegrationTests.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava19;
2626
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava20;
2727
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava21;
28+
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava22;
2829
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava8;
2930
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava9;
3031
import static org.junit.jupiter.api.condition.JRE.JAVA_17;
@@ -78,15 +79,16 @@ void javaMax18() {
7879
@Test
7980
@EnabledForJreRange(min = JAVA_18)
8081
void javaMin18() {
81-
assertTrue(onJava18() || onJava19() || onJava20() || onJava21());
82+
assertTrue(onJava18() || onJava19() || onJava20() || onJava21() || onJava22());
8283
assertFalse(onJava17());
8384
}
8485

8586
@Test
8687
@EnabledForJreRange(min = OTHER, max = OTHER)
8788
void other() {
88-
assertFalse(onJava8() || onJava9() || onJava10() || onJava11() || onJava12() || onJava13() || onJava14()
89-
|| onJava15() || onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21());
89+
assertFalse(
90+
onJava8() || onJava9() || onJava10() || onJava11() || onJava12() || onJava13() || onJava14() || onJava15()
91+
|| onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21() || onJava22());
9092
}
9193

9294
}

junit-jupiter-engine/src/test/java/org/junit/jupiter/api/condition/EnabledOnJreConditionTests.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava19;
2525
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava20;
2626
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava21;
27+
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava22;
2728
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava8;
2829
import static org.junit.jupiter.api.condition.EnabledOnJreIntegrationTests.onJava9;
2930

@@ -205,6 +206,15 @@ void java21() {
205206
assertEnabledOnCurrentJreIf(onJava21());
206207
}
207208

209+
/**
210+
* @see EnabledOnJreIntegrationTests#java22()
211+
*/
212+
@Test
213+
void java22() {
214+
evaluateCondition();
215+
assertEnabledOnCurrentJreIf(onJava22());
216+
}
217+
208218
/**
209219
* @see EnabledOnJreIntegrationTests#other()
210220
*/
@@ -213,7 +223,7 @@ void other() {
213223
evaluateCondition();
214224
assertEnabledOnCurrentJreIf(
215225
!(onJava8() || onJava9() || onJava10() || onJava11() || onJava12() || onJava13() || onJava14() || onJava15()
216-
|| onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21()));
226+
|| onJava16() || onJava17() || onJava18() || onJava19() || onJava20() || onJava21() || onJava22()));
217227
assertCustomDisabledReasonIs("Disabled on almost every JRE");
218228
}
219229

0 commit comments

Comments
 (0)