From d8565962067addf10c77c6ac6644507815480006 Mon Sep 17 00:00:00 2001 From: Jente Sondervorst Date: Wed, 30 Oct 2024 23:02:34 +0100 Subject: [PATCH] Added default warn strictness if no strictness modifiers are used. (#626) --- .../testing/junit5/MockitoJUnitToMockitoExtension.java | 9 +++++++-- .../mockito/MockitoJUnitToMockitoExtensionTest.java | 9 +++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/openrewrite/java/testing/junit5/MockitoJUnitToMockitoExtension.java b/src/main/java/org/openrewrite/java/testing/junit5/MockitoJUnitToMockitoExtension.java index 0c957f25f..177b361bf 100644 --- a/src/main/java/org/openrewrite/java/testing/junit5/MockitoJUnitToMockitoExtension.java +++ b/src/main/java/org/openrewrite/java/testing/junit5/MockitoJUnitToMockitoExtension.java @@ -114,7 +114,12 @@ public J.ClassDeclaration visitClassDeclaration(J.ClassDeclaration classDecl, Ex maybeAddImport("org.junit.jupiter.api.extension.ExtendWith"); maybeAddImport("org.mockito.junit.jupiter.MockitoExtension"); - if (strictness != null) { + if (strictness == null) { + // As we are in a Rule, and rules where always warn by default, + // we cannot use junit5 Strictness.STRICT_STUBS during migration + strictness = "Strictness.WARN"; + } + if (!strictness.contains("STRICT_STUBS")) { cd = JavaTemplate.builder("@MockitoSettings(strictness = " + strictness + ")") .doBeforeParseTemplate(System.out::println) .javaParser(JavaParser.fromJavaVersion() @@ -156,7 +161,7 @@ public J.MethodInvocation visitMethodInvocation(J.MethodInvocation method, Execu strictness = "Strictness.LENIENT"; break; } - if (strictness != null && !strictness.contains("STRICT_STUBS")) { + if (strictness != null) { strictness = strictness.startsWith("Strictness.") ? strictness : "Strictness." + strictness; getCursor().putMessageOnFirstEnclosing(J.ClassDeclaration.class, STRICTNESS_KEY, strictness); } diff --git a/src/test/java/org/openrewrite/java/testing/mockito/MockitoJUnitToMockitoExtensionTest.java b/src/test/java/org/openrewrite/java/testing/mockito/MockitoJUnitToMockitoExtensionTest.java index c42b35e40..03f3017f2 100644 --- a/src/test/java/org/openrewrite/java/testing/mockito/MockitoJUnitToMockitoExtensionTest.java +++ b/src/test/java/org/openrewrite/java/testing/mockito/MockitoJUnitToMockitoExtensionTest.java @@ -64,8 +64,11 @@ class MyTest { import org.junit.rules.TemporaryFolder; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; + import org.mockito.junit.jupiter.MockitoSettings; + import org.mockito.quality.Strictness; @ExtendWith(MockitoExtension.class) + @MockitoSettings(strictness = Strictness.WARN) class MyTest { @Rule @@ -103,9 +106,12 @@ class MyTest { import org.junit.runners.MethodSorters; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; + import org.mockito.junit.jupiter.MockitoSettings; + import org.mockito.quality.Strictness; @ExtendWith(MockitoExtension.class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) + @MockitoSettings(strictness = Strictness.WARN) class MyTest { } """ @@ -266,12 +272,15 @@ public void exampleTest() { import org.mockito.junit.MockitoJUnit; import org.mockito.junit.VerificationCollector; import org.mockito.junit.jupiter.MockitoExtension; + import org.mockito.junit.jupiter.MockitoSettings; + import org.mockito.quality.Strictness; import java.util.List; import static org.mockito.Mockito.verify; @ExtendWith(MockitoExtension.class) + @MockitoSettings(strictness = Strictness.WARN) class MyTest { @Rule