Open source
Migrate JUnit JRE conditions
Recipe ID
org.openrewrite.java.testing.junit6.MinimumJreConditionsArtifact
org.openrewrite.recipe:rewrite-testing-frameworksOptions
Examples
java
| Parameter | Value |
|---|---|
| javaVersion | 17 |
- java
- Diff
Before
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.condition.EnabledOnJre;
import org.junit.jupiter.api.condition.DisabledOnJre;
import org.junit.jupiter.api.condition.EnabledForJreRange;
import org.junit.jupiter.api.condition.DisabledForJreRange;
import org.junit.jupiter.api.condition.JRE;
class MyTest {
@Test
@EnabledOnJre(JRE.JAVA_8)
void testOnJava8() {
System.out.println("Java 8");
}
@Test
@EnabledOnJre(JRE.JAVA_21)
void testOnJava21() {
System.out.println("Java 21");
}
@Test
@DisabledOnJre(JRE.JAVA_11)
void testNotOnJava11() {
System.out.println("Not Java 11");
}
@Test
@EnabledForJreRange(min = JRE.JAVA_8, max = JRE.JAVA_11)
void testRange8To11() {
System.out.println("Java 8-11");
}
@Test
@DisabledForJreRange(min = JRE.JAVA_8, max = JRE.JAVA_11)
void testNotRange8To11() {
System.out.println("Not Java 8-11");
}
@Test
void testAlways() {
System.out.println("Always");
}
}
After
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.condition.EnabledOnJre;
import org.junit.jupiter.api.condition.JRE;
class MyTest {
@Test
@EnabledOnJre(JRE.JAVA_21)
void testOnJava21() {
System.out.println("Java 21");
}
@Test
void testNotOnJava11() {
System.out.println("Not Java 11");
}
@Test
void testNotRange8To11() {
System.out.println("Not Java 8-11");
}
@Test
void testAlways() {
System.out.println("Always");
}
}
@@ -3,3 +3,0 @@
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.condition.EnabledOnJre;
-import org.junit.jupiter.api.condition.DisabledOnJre;
-import org.junit.jupiter.api.condition.EnabledForJreRange;
-import org.junit.jupiter.api.condition.DisabledForJreRange;
import org.junit.jupiter.api.condition.JRE;
@@ -9,5 +6,0 @@
class MyTest {
- @Test
- @EnabledOnJre(JRE.JAVA_8)
- void testOnJava8() {
- System.out.println("Java 8");
- }
@@ -22,1 +14,0 @@
@Test
- @DisabledOnJre(JRE.JAVA_11)
void testNotOnJava11() {
@@ -28,7 +19,0 @@
@Test
- @EnabledForJreRange(min = JRE.JAVA_8, max = JRE.JAVA_11)
- void testRange8To11() {
- System.out.println("Java 8-11");
- }
-
- @Test
- @DisabledForJreRange(min = JRE.JAVA_8, max = JRE.JAVA_11)
void testNotRange8To11() {
Usage
Run this recipe
You will need to have configured the Moderne CLI on your machine before you can run the following command.
shell
mod run . --recipe MinimumJreConditions --recipe-option "javaVersion=17"
If the recipe is not available locally, then you can install it using:
mod config recipes jar install org.openrewrite.recipe:rewrite-testing-frameworks:3.40.0
Data tables
Source files that had results
org.openrewrite.table.SourcesFileResultsSource files that were modified by the recipe run.
| Column | Description |
|---|---|
| Source path before the run | The source path of the file before the run. null when a source file was created during the run. |
| Source path after the run | A recipe may modify the source path. This is the path after the run. null when a source file was deleted during the run. |
| Parent of the recipe that made changes | In a hierarchical recipe, the parent of the recipe that made a change. Empty if this is the root of a hierarchy or if the recipe is not hierarchical at all. |
| Recipe that made changes | The specific recipe that made a change. |
| Estimated time saving | An estimated effort that a developer to fix manually instead of using this recipe, in unit of seconds. |
| Cycle | The recipe cycle in which the change was made. |
Source files that had search results
org.openrewrite.table.SearchResultsSearch results that were found during the recipe run.
| Column | Description |
|---|---|
| Source path of search result before the run | The source path of the file with the search result markers present. |
| Source path of search result after run the run | A recipe may modify the source path. This is the path after the run. null when a source file was deleted during the run. |
| Result | The trimmed printed tree of the LST element that the marker is attached to. |
| Description | The content of the description of the marker. |
| Recipe that added the search marker | The specific recipe that added the Search marker. |
Source files that errored on a recipe
org.openrewrite.table.SourcesFileErrorsThe details of all errors produced by a recipe run.
| Column | Description |
|---|---|
| Source path | The file that failed to parse. |
| Recipe that made changes | The specific recipe that made a change. |
| Stack trace | The stack trace of the failure. |
Recipe performance
org.openrewrite.table.RecipeRunStatsStatistics used in analyzing the performance of recipes.
| Column | Description |
|---|---|
| The recipe | The recipe whose stats are being measured both individually and cumulatively. |
| Source file count | The number of source files the recipe ran over. |
| Source file changed count | The number of source files which were changed in the recipe run. Includes files created, deleted, and edited. |
| Cumulative scanning time (ns) | The total time spent across the scanning phase of this recipe. |
| Max scanning time (ns) | The max time scanning any one source file. |
| Cumulative edit time (ns) | The total time spent across the editing phase of this recipe. |
| Max edit time (ns) | The max time editing any one source file. |