Skip to content

Commit b8f29f3

Browse files
committed
Handle removal of doNext(Recipe)
1 parent fb43087 commit b8f29f3

11 files changed

+43
-23
lines changed

src/main/java/org/openrewrite/java/testing/assertj/JUnitFailToAssertJFail.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ public J.MethodInvocation visitMethodInvocation(J.MethodInvocation method, Execu
115115
);
116116
}
117117

118-
doAfterVisit(new RemoveUnusedImports());
118+
doAfterVisit(new RemoveUnusedImports().getVisitor());
119119
doAfterVisit(new UnqualifiedMethodInvocations());
120120
return m;
121121
}

src/main/java/org/openrewrite/java/testing/junit5/AssertToAssertions.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,8 @@ public J.MethodInvocation visitMethodInvocation(J.MethodInvocation method, Execu
7979
return m;
8080
}
8181
doAfterVisit(new ChangeMethodTargetToStatic("org.junit.Assert " + m.getSimpleName() + "(..)",
82-
"org.junit.jupiter.api.Assertions", null, null, true));
82+
"org.junit.jupiter.api.Assertions", null, null, true)
83+
.getVisitor());
8384
List<Expression> args = m.getArguments();
8485
Expression firstArg = args.get(0);
8586
// Suppress arg-switching for Assertions.assertEquals(String, String)

src/main/java/org/openrewrite/java/testing/junit5/MigrateJUnitTestCase.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,11 +71,11 @@ public J.CompilationUnit visitCompilationUnit(J.CompilationUnit cu, ExecutionCon
7171
J.CompilationUnit c = super.visitCompilationUnit(cu, ctx);
7272
doAfterVisit(new TestCaseVisitor());
7373
// ChangeType for org.junit.Assert method invocations because TestCase extends org.junit.Assert
74-
doAfterVisit(new ChangeType("junit.framework.TestCase", "org.junit.Assert", true));
75-
doAfterVisit(new ChangeType("junit.framework.Assert", "org.junit.Assert", true));
74+
doAfterVisit(new ChangeType("junit.framework.TestCase", "org.junit.Assert", true).getVisitor());
75+
doAfterVisit(new ChangeType("junit.framework.Assert", "org.junit.Assert", true).getVisitor());
7676
doAfterVisit(new AssertToAssertions.AssertToAssertionsVisitor());
77-
doAfterVisit(new UseStaticImport("org.junit.jupiter.api.Assertions assert*(..)"));
78-
doAfterVisit(new UseStaticImport("org.junit.jupiter.api.Assertions fail*(..)"));
77+
doAfterVisit(new UseStaticImport("org.junit.jupiter.api.Assertions assert*(..)").getVisitor());
78+
doAfterVisit(new UseStaticImport("org.junit.jupiter.api.Assertions fail*(..)").getVisitor());
7979
return c;
8080
}
8181

src/main/java/org/openrewrite/java/testing/junit5/RemoveObsoleteRunners.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public class RemoveObsoleteRunnersVisitor extends JavaIsoVisitor<ExecutionContex
5757
public J.ClassDeclaration visitClassDeclaration(J.ClassDeclaration classDecl, ExecutionContext ctx) {
5858
for (String runner : obsoleteRunners) {
5959
//noinspection ConstantConditions
60-
doAfterVisit(new RemoveAnnotation("@org.junit.runner.RunWith(" + runner + ".class)"));
60+
doAfterVisit(new RemoveAnnotation("@org.junit.runner.RunWith(" + runner + ".class)").getVisitor());
6161
maybeRemoveImport(runner);
6262
}
6363
maybeRemoveImport("org.junit.runner.RunWith");

src/main/java/org/openrewrite/java/testing/junit5/TemporaryFolderToTempDir.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,9 @@ public TreeVisitor<?, ExecutionContext> getVisitor() {
6565
public J visitCompilationUnit(J.CompilationUnit cu, ExecutionContext ctx) {
6666
J.CompilationUnit c = (J.CompilationUnit) super.visitCompilationUnit(cu, ctx);
6767
if (c != cu) {
68-
doAfterVisit(new ChangeType("org.junit.rules.TemporaryFolder", "java.io.File", true));
68+
c = (J.CompilationUnit) new ChangeType(
69+
"org.junit.rules.TemporaryFolder", "java.io.File", true).getVisitor()
70+
.visit(c, ctx);
6971
maybeAddImport("java.io.File");
7072
maybeAddImport("org.junit.jupiter.api.io.TempDir");
7173
maybeRemoveImport("org.junit.ClassRule");

src/main/java/org/openrewrite/java/testing/junit5/TestRuleToTestInfo.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,8 @@ public J visitMethodInvocation(J.MethodInvocation method, ExecutionContext ctx)
8181
return mi;
8282
}
8383
});
84-
doAfterVisit(new ChangeType("org.junit.rules.TestName", "java.lang.String", true));
85-
doAfterVisit(new ChangeType("org.junit.Before", "org.junit.jupiter.api.BeforeEach", true));
84+
doAfterVisit(new ChangeType("org.junit.rules.TestName", "java.lang.String", true).getVisitor());
85+
doAfterVisit(new ChangeType("org.junit.Before", "org.junit.jupiter.api.BeforeEach", true).getVisitor());
8686
return compilationUnit;
8787
}
8888

src/main/java/org/openrewrite/java/testing/junit5/UpdateBeforeAfterAnnotations.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,10 +52,10 @@ public static class UpdateBeforeAfterAnnotationsVisitor extends JavaIsoVisitor<E
5252
public J.CompilationUnit visitCompilationUnit(J.CompilationUnit cu, ExecutionContext ctx) {
5353
//This visitor handles changing the method visibility for any method annotated with one of the four before/after
5454
//annotations. It registers visitors that will sweep behind it making the type changes.
55-
doAfterVisit(new ChangeType("org.junit.Before", "org.junit.jupiter.api.BeforeEach", true));
56-
doAfterVisit(new ChangeType("org.junit.After", "org.junit.jupiter.api.AfterEach", true));
57-
doAfterVisit(new ChangeType("org.junit.BeforeClass", "org.junit.jupiter.api.BeforeAll", true));
58-
doAfterVisit(new ChangeType("org.junit.AfterClass", "org.junit.jupiter.api.AfterAll", true));
55+
doAfterVisit(new ChangeType("org.junit.Before", "org.junit.jupiter.api.BeforeEach", true).getVisitor());
56+
doAfterVisit(new ChangeType("org.junit.After", "org.junit.jupiter.api.AfterEach", true).getVisitor());
57+
doAfterVisit(new ChangeType("org.junit.BeforeClass", "org.junit.jupiter.api.BeforeAll", true).getVisitor());
58+
doAfterVisit(new ChangeType("org.junit.AfterClass", "org.junit.jupiter.api.AfterAll", true).getVisitor());
5959

6060
return super.visitCompilationUnit(cu, ctx);
6161
}

src/main/java/org/openrewrite/java/testing/junit5/UpdateMockWebServer.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,11 @@
3333
import org.openrewrite.java.tree.TypeUtils;
3434
import org.openrewrite.marker.Markers;
3535

36+
import java.util.List;
3637
import java.util.UUID;
3738

3839
import static java.util.Collections.emptyList;
40+
import static java.util.Collections.singletonList;
3941

4042
/**
4143
* Recipe for converting JUnit 4 okhttp3 MockWebServer Rules with their JUnit 5 equivalent.
@@ -142,8 +144,6 @@ public J.ClassDeclaration visitClassDeclaration(J.ClassDeclaration classDecl, Ex
142144
cd = cd.withBody(body);
143145
}
144146
maybeRemoveImport("org.junit.Rule");
145-
doAfterVisit(new UpgradeDependencyVersion("com.squareup.okhttp3", "mockwebserver", "4.X",
146-
null, false, emptyList()));
147147
}
148148
return cd;
149149
}
@@ -176,4 +176,10 @@ public J.MethodDeclaration visitMethodDeclaration(J.MethodDeclaration method, Ex
176176
}
177177
});
178178
}
179+
180+
@Override
181+
public List<Recipe> getRecipeList() {
182+
return singletonList(new UpgradeDependencyVersion("com.squareup.okhttp3", "mockwebserver", "4.X",
183+
null, false, emptyList()));
184+
}
179185
}

src/main/java/org/openrewrite/java/testing/junit5/UseWiremockExtension.java

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,11 @@
2424
import org.openrewrite.java.search.UsesType;
2525
import org.openrewrite.java.tree.*;
2626

27+
import java.util.Collections;
28+
import java.util.List;
29+
2730
import static java.util.Collections.emptyList;
31+
import static java.util.Collections.singletonList;
2832

2933
public class UseWiremockExtension extends Recipe {
3034

@@ -48,7 +52,7 @@ public TreeVisitor<?, ExecutionContext> getVisitor() {
4852
public J preVisit(J tree, ExecutionContext ctx) {
4953
if (tree instanceof JavaSourceFile) {
5054
doAfterVisit(new ChangeType("com.github.tomakehurst.wiremock.junit.WireMockRule",
51-
"com.github.tomakehurst.wiremock.junit5.WireMockExtension", true));
55+
"com.github.tomakehurst.wiremock.junit5.WireMockExtension", true).getVisitor());
5256
}
5357
return tree;
5458
}
@@ -59,8 +63,8 @@ public J visitNewClass(J.NewClass newClass, ExecutionContext ctx) {
5963
J.NewClass n = (J.NewClass) super.visitNewClass(newClass, ctx);
6064
if (newWiremockRule.matches(n)) {
6165
maybeAddImport("com.github.tomakehurst.wiremock.junit5.WireMockExtension");
62-
doAfterVisit(new ChangeType("org.junit.Rule", "org.junit.jupiter.api.extension.RegisterExtension", true));
63-
doAfterVisit(new UpgradeDependencyVersion("com.github.tomakehurst", "wiremock-jre8", "2.x", null, true, emptyList()));
66+
doAfterVisit(new ChangeType("org.junit.Rule", "org.junit.jupiter.api.extension.RegisterExtension", true)
67+
.getVisitor());
6468

6569
Expression arg = n.getArguments().get(0);
6670

@@ -163,4 +167,10 @@ public J visitNewClass(J.NewClass newClass, ExecutionContext ctx) {
163167
}
164168
});
165169
}
170+
171+
@Override
172+
public List<Recipe> getRecipeList() {
173+
return singletonList(new UpgradeDependencyVersion("com.github.tomakehurst", "wiremock*",
174+
"2.x", null, true, emptyList()));
175+
}
166176
}

src/main/java/org/openrewrite/java/testing/mockito/MockUtilsToStatic.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,10 @@ public static class MockUtilsToStaticVisitor extends JavaVisitor<ExecutionContex
6161
);
6262

6363
@Override
64-
public J visitCompilationUnit(J.CompilationUnit cu, ExecutionContext ctx) {
65-
doAfterVisit(changeMethodTargetToStatic);
66-
return super.visitCompilationUnit(cu, ctx);
64+
public J visitCompilationUnit(J.CompilationUnit compilationUnit, ExecutionContext ctx) {
65+
J.CompilationUnit cu = (J.CompilationUnit) super.visitCompilationUnit(compilationUnit, ctx);
66+
cu = (J.CompilationUnit) changeMethodTargetToStatic.getVisitor().visitNonNull(cu, ctx);
67+
return cu;
6768
}
6869

6970
@Override

0 commit comments

Comments
 (0)