diff --git a/src/main/resources/META-INF/rewrite/examples.yml b/src/main/resources/META-INF/rewrite/examples.yml index 3ac7687dd7..58dde09b4c 100644 --- a/src/main/resources/META-INF/rewrite/examples.yml +++ b/src/main/resources/META-INF/rewrite/examples.yml @@ -992,6 +992,27 @@ examples: type: specs.openrewrite.org/v1beta/example recipeName: org.openrewrite.java.migrate.UpgradePluginsForJava11 examples: +- description: '' + sources: + - before: | + + com.mycompany.app + my-app + 1 + + + + org.codehaus.mojo + jaxb2-maven-plugin + 2.3.1 + + + + + path: pom.xml + language: xml + - before: project + language: mavenProject - description: '' sources: - before: | @@ -6358,6 +6379,23 @@ examples: language: java --- type: specs.openrewrite.org/v1beta/example +recipeName: org.openrewrite.java.migrate.lombok.AdoptLombokGetterMethodNames +examples: +- description: '' + sources: + - before: | + class A { + int foo = 9; + int giveFoo() { return foo; } + } + after: | + class A { + int foo = 9; + int getFoo() { return foo; } + } + language: java +--- +type: specs.openrewrite.org/v1beta/example recipeName: org.openrewrite.java.migrate.lombok.LombokBestPractices examples: - description: '' diff --git a/src/test/java/org/openrewrite/java/migrate/AddMissingMethodImplementationTest.java b/src/test/java/org/openrewrite/java/migrate/AddMissingMethodImplementationTest.java index d0ad8c02d0..adb6bccc18 100644 --- a/src/test/java/org/openrewrite/java/migrate/AddMissingMethodImplementationTest.java +++ b/src/test/java/org/openrewrite/java/migrate/AddMissingMethodImplementationTest.java @@ -34,49 +34,49 @@ public void defaults(RecipeSpec spec) { .allSources(src -> src.markers(javaVersion(21))); } + @DocumentExample @Test - @Issue("https://github.com/openrewrite/rewrite-migrate-java/issues/459") - void skipInterfaces() { + void happyPath() { //language=java rewriteRun( java( """ interface I1 {} - interface I2 extends I1 {} + class C2 implements I1 {} + """, + """ + interface I1 {} + class C2 implements I1 { + public void m1() { + System.out.println("m1"); + }} """ ) ); } @Test - void skipAbstractClasses() { + @Issue("https://github.com/openrewrite/rewrite-migrate-java/issues/459") + void skipInterfaces() { //language=java rewriteRun( java( """ interface I1 {} - abstract class AC2 implements I1 {} + interface I2 extends I1 {} """ ) ); } - @DocumentExample @Test - void happyPath() { + void skipAbstractClasses() { //language=java rewriteRun( java( """ interface I1 {} - class C2 implements I1 {} - """, - """ - interface I1 {} - class C2 implements I1 { - public void m1() { - System.out.println("m1"); - }} + abstract class AC2 implements I1 {} """ ) ); diff --git a/src/test/java/org/openrewrite/java/migrate/ReplaceComSunAWTUtilitiesMethodsTest.java b/src/test/java/org/openrewrite/java/migrate/ReplaceComSunAWTUtilitiesMethodsTest.java index 537ea379ed..5397ef58f1 100644 --- a/src/test/java/org/openrewrite/java/migrate/ReplaceComSunAWTUtilitiesMethodsTest.java +++ b/src/test/java/org/openrewrite/java/migrate/ReplaceComSunAWTUtilitiesMethodsTest.java @@ -80,40 +80,6 @@ public static void setComponentMixingCutoutShape(Component c, Shape sh){ ); } - @Test - void replaceComSunAWTUtilitiesClassesIsTranslucencySupported() { - rewriteRun( - //language=java - java( - """ - import com.test.AWTUtilitiesTest; - - class Test { - void foo() { - boolean f = AWTUtilitiesTest.isTranslucencySupported1(AWTUtilitiesTest.Translucency.TRANSLUCENT); - boolean j = AWTUtilitiesTest.isTranslucencySupported1(AWTUtilitiesTest.Translucency.PERPIXEL_TRANSPARENT); - boolean k = AWTUtilitiesTest.isTranslucencySupported1(AWTUtilitiesTest.Translucency.PERPIXEL_TRANSLUCENT); - } - } - """, - """ - import java.awt.GraphicsDevice; - import java.awt.GraphicsDevice.WindowTranslucency; - import java.awt.GraphicsEnvironment; - import java.awt.Window; - - class Test { - void foo() { - boolean f = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().isWindowTranslucencySupported(WindowTranslucency.TRANSLUCENT); - boolean j = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().isWindowTranslucencySupported(WindowTranslucency.PERPIXEL_TRANSPARENT); - boolean k = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().isWindowTranslucencySupported(WindowTranslucency.PERPIXEL_TRANSLUCENT); - } - } - """ - ) - ); - } - @Test @DocumentExample void replaceComSunAWTUtilitiesClassesRemaining() { @@ -168,4 +134,38 @@ void foo() { ) ); } + + @Test + void replaceComSunAWTUtilitiesClassesIsTranslucencySupported() { + rewriteRun( + //language=java + java( + """ + import com.test.AWTUtilitiesTest; + + class Test { + void foo() { + boolean f = AWTUtilitiesTest.isTranslucencySupported1(AWTUtilitiesTest.Translucency.TRANSLUCENT); + boolean j = AWTUtilitiesTest.isTranslucencySupported1(AWTUtilitiesTest.Translucency.PERPIXEL_TRANSPARENT); + boolean k = AWTUtilitiesTest.isTranslucencySupported1(AWTUtilitiesTest.Translucency.PERPIXEL_TRANSLUCENT); + } + } + """, + """ + import java.awt.GraphicsDevice; + import java.awt.GraphicsDevice.WindowTranslucency; + import java.awt.GraphicsEnvironment; + import java.awt.Window; + + class Test { + void foo() { + boolean f = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().isWindowTranslucencySupported(WindowTranslucency.TRANSLUCENT); + boolean j = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().isWindowTranslucencySupported(WindowTranslucency.PERPIXEL_TRANSPARENT); + boolean k = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().isWindowTranslucencySupported(WindowTranslucency.PERPIXEL_TRANSLUCENT); + } + } + """ + ) + ); + } } diff --git a/src/test/java/org/openrewrite/java/migrate/guava/NoGuavaImmutableSetOfTest.java b/src/test/java/org/openrewrite/java/migrate/guava/NoGuavaImmutableSetOfTest.java index 58e1d1568e..cce31022ba 100644 --- a/src/test/java/org/openrewrite/java/migrate/guava/NoGuavaImmutableSetOfTest.java +++ b/src/test/java/org/openrewrite/java/migrate/guava/NoGuavaImmutableSetOfTest.java @@ -32,6 +32,34 @@ public void defaults(RecipeSpec spec) { .parser(JavaParser.fromJavaVersion().classpath("guava")); } + @Test + @DocumentExample + void replaceArguments() { + //language=java + rewriteRun( + version( + java( + """ + import java.util.Set; + import com.google.common.collect.ImmutableSet; + + class Test { + Set m = ImmutableSet.of("A", "B", "C", "D"); + } + """, + """ + import java.util.Set; + + class Test { + Set m = Set.of("A", "B", "C", "D"); + } + """ + ), + 9 + ) + ); + } + @Test void doNotChangeReturnsImmutableSet() { //language=java @@ -157,34 +185,6 @@ void method() { ); } - @Test - @DocumentExample - void replaceArguments() { - //language=java - rewriteRun( - version( - java( - """ - import java.util.Set; - import com.google.common.collect.ImmutableSet; - - class Test { - Set m = ImmutableSet.of("A", "B", "C", "D"); - } - """, - """ - import java.util.Set; - - class Test { - Set m = Set.of("A", "B", "C", "D"); - } - """ - ), - 9 - ) - ); - } - @Test void fieldAssignmentToSet() { //language=java diff --git a/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxToJakartaTest.java b/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxToJakartaTest.java index 45c481dcb3..55016a8d45 100644 --- a/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxToJakartaTest.java +++ b/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxToJakartaTest.java @@ -69,13 +69,6 @@ public void defaults(RecipeSpec spec) { ); } - @Test - void doNotAddImportWhenNoChangesWereMade() { - rewriteRun( - java("public class B {}") - ); - } - @DocumentExample @Test void changeImport() { @@ -97,6 +90,13 @@ public class B { ); } + @Test + void doNotAddImportWhenNoChangesWereMade() { + rewriteRun( + java("public class B {}") + ); + } + @Test void fullyQualifiedName() { rewriteRun( diff --git a/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxTransactionMigrationToJakartaTransactionTest.java b/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxTransactionMigrationToJakartaTransactionTest.java index 3844f86389..cc9b29e121 100644 --- a/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxTransactionMigrationToJakartaTransactionTest.java +++ b/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxTransactionMigrationToJakartaTransactionTest.java @@ -60,22 +60,6 @@ public void defaults(RecipeSpec spec) { ); } - @Test - void doNotChangeImportWhenPackageFromJavaSE() { - rewriteRun( - spec -> spec.parser(JavaParser.fromJavaVersion().dependsOn(javax_transaction_xa)), - //language=java - java( - """ - import javax.transaction.xa.*; - public class A { - XAResource xa; - } - """ - ) - ); - } - @DocumentExample @Test void changeImportWhenPackageFromJakartaTransaction() { @@ -100,4 +84,20 @@ public void foo() {} ) ); } + + @Test + void doNotChangeImportWhenPackageFromJavaSE() { + rewriteRun( + spec -> spec.parser(JavaParser.fromJavaVersion().dependsOn(javax_transaction_xa)), + //language=java + java( + """ + import javax.transaction.xa.*; + public class A { + XAResource xa; + } + """ + ) + ); + } } diff --git a/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxWebXmlToJakartaWebXmlTest.java b/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxWebXmlToJakartaWebXmlTest.java index 7b056a7379..6662074700 100644 --- a/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxWebXmlToJakartaWebXmlTest.java +++ b/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxWebXmlToJakartaWebXmlTest.java @@ -66,21 +66,27 @@ void migrateSun() { ); } + @DocumentExample @Test - void migrateJCP() { + void migrateWithSQLDataSource() { rewriteRun( //language=xml xml( """ - + xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_0.xsd" + version="2.0"> javax.faces.PROJECT_STAGE Production + + myDataSource + javax.sql.DataSource + CONTAINER + """, """ @@ -93,6 +99,11 @@ void migrateJCP() { jakarta.faces.PROJECT_STAGE Production + + myDataSource + javax.sql.DataSource + CONTAINER + """, sourceSpecs -> sourceSpecs.path("web.xml") @@ -100,27 +111,21 @@ void migrateJCP() { ); } - @DocumentExample @Test - void migrateWithSQLDataSource() { + void migrateJCP() { rewriteRun( //language=xml xml( """ - + xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_1.xsd" + version="3.1"> javax.faces.PROJECT_STAGE Production - - myDataSource - javax.sql.DataSource - CONTAINER - """, """ @@ -133,11 +138,6 @@ void migrateWithSQLDataSource() { jakarta.faces.PROJECT_STAGE Production - - myDataSource - javax.sql.DataSource - CONTAINER - """, sourceSpecs -> sourceSpecs.path("web.xml") diff --git a/src/test/java/org/openrewrite/java/migrate/javaee/HttpSessionInvalidateTest.java b/src/test/java/org/openrewrite/java/migrate/javaee/HttpSessionInvalidateTest.java index 199ede219e..edc064d2f3 100644 --- a/src/test/java/org/openrewrite/java/migrate/javaee/HttpSessionInvalidateTest.java +++ b/src/test/java/org/openrewrite/java/migrate/javaee/HttpSessionInvalidateTest.java @@ -32,8 +32,9 @@ public void defaults(RecipeSpec spec) { .recipe(new HttpSessionInvalidate()); } + @DocumentExample @Test - void noChangeNeeded() { + void useLogoutWhenHttpServletRequestExistsInScope() { rewriteRun( //language=java java( @@ -44,7 +45,20 @@ void noChangeNeeded() { class Foo { void logOut(HttpServletRequest req, HttpServletResponse res) { - HttpSession session = req.getSession(); + HttpSession session = req.getSession(false); + session.invalidate(); + res.sendRedirect("login.html"); + } + } + """, + """ + import javax.servlet.http.HttpServletResponse; + import javax.servlet.http.HttpServletRequest; + import javax.servlet.http.HttpSession; + + class Foo { + void logOut(HttpServletRequest req, HttpServletResponse res) { + HttpSession session = req.getSession(false); req.logout(); res.sendRedirect("login.html"); } @@ -55,17 +69,19 @@ void logOut(HttpServletRequest req, HttpServletResponse res) { } @Test - void noChangeCannotFindServletRequest() { + void noChangeNeeded() { rewriteRun( //language=java java( """ import javax.servlet.http.HttpServletResponse; + import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; class Foo { - void logOut(HttpSession session, HttpServletResponse res) { - session.invalidate(); + void logOut(HttpServletRequest req, HttpServletResponse res) { + HttpSession session = req.getSession(); + req.logout(); res.sendRedirect("login.html"); } } @@ -74,37 +90,21 @@ void logOut(HttpSession session, HttpServletResponse res) { ); } - @DocumentExample @Test - void useLogoutWhenHttpServletRequestExistsInScope() { + void noChangeCannotFindServletRequest() { rewriteRun( //language=java java( """ import javax.servlet.http.HttpServletResponse; - import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; class Foo { - void logOut(HttpServletRequest req, HttpServletResponse res) { - HttpSession session = req.getSession(false); + void logOut(HttpSession session, HttpServletResponse res) { session.invalidate(); res.sendRedirect("login.html"); } } - """, - """ - import javax.servlet.http.HttpServletResponse; - import javax.servlet.http.HttpServletRequest; - import javax.servlet.http.HttpSession; - - class Foo { - void logOut(HttpServletRequest req, HttpServletResponse res) { - HttpSession session = req.getSession(false); - req.logout(); - res.sendRedirect("login.html"); - } - } """ ) ); diff --git a/src/test/java/org/openrewrite/java/migrate/lang/MigrateClassNewInstanceToGetDeclaredConstructorNewInstanceTest.java b/src/test/java/org/openrewrite/java/migrate/lang/MigrateClassNewInstanceToGetDeclaredConstructorNewInstanceTest.java index 96530753b5..0d6775a6c5 100644 --- a/src/test/java/org/openrewrite/java/migrate/lang/MigrateClassNewInstanceToGetDeclaredConstructorNewInstanceTest.java +++ b/src/test/java/org/openrewrite/java/migrate/lang/MigrateClassNewInstanceToGetDeclaredConstructorNewInstanceTest.java @@ -32,8 +32,9 @@ public void defaults(RecipeSpec spec) { .allSources(s -> s.markers(javaVersion(9))); } + @DocumentExample @Test - void doesNotThrowExceptionOrThrowable() { + void methodThrowsThrowable() { //language=java rewriteRun( java( @@ -41,19 +42,28 @@ void doesNotThrowExceptionOrThrowable() { package com.abc; class A { - public void test() throws ClassNotFoundException, InstantiationException, IllegalAccessException { + public void test() throws Throwable { Class class_ = Class.forName("org.openrewrite.Test"); class_.newInstance(); } } + """, + """ + package com.abc; + + class A { + public void test() throws Throwable { + Class class_ = Class.forName("org.openrewrite.Test"); + class_.getDeclaredConstructor().newInstance(); + } + } """ ) ); } - @DocumentExample @Test - void methodThrowsThrowable() { + void doesNotThrowExceptionOrThrowable() { //language=java rewriteRun( java( @@ -61,21 +71,11 @@ void methodThrowsThrowable() { package com.abc; class A { - public void test() throws Throwable { + public void test() throws ClassNotFoundException, InstantiationException, IllegalAccessException { Class class_ = Class.forName("org.openrewrite.Test"); class_.newInstance(); } } - """, - """ - package com.abc; - - class A { - public void test() throws Throwable { - Class class_ = Class.forName("org.openrewrite.Test"); - class_.getDeclaredConstructor().newInstance(); - } - } """ ) ); diff --git a/src/test/java/org/openrewrite/java/migrate/lang/UseTextBlocksTest.java b/src/test/java/org/openrewrite/java/migrate/lang/UseTextBlocksTest.java index 20840fcdc5..791805125c 100644 --- a/src/test/java/org/openrewrite/java/migrate/lang/UseTextBlocksTest.java +++ b/src/test/java/org/openrewrite/java/migrate/lang/UseTextBlocksTest.java @@ -71,6 +71,49 @@ class Test { ); } + @DocumentExample + @Test + void newlineAtBeginningOfLines() { + rewriteRun( + //language=java + java( + """ + class A { + void welcome() { + log("\\n=========================================================" + + "\\n " + + "\\n Welcome to Spring Integration! " + + "\\n " + + "\\n For more information please visit: " + + "\\n https://www.springsource.org/spring-integration " + + "\\n " + + "\\n========================================================="); + } + void log(String s) {} + } + """, + """ + class A { + void welcome() { + log(\""" + \s + ========================================================= + \\s + Welcome to Spring Integration! \\s + \\s + For more information please visit: \\s + https://www.springsource.org/spring-integration \\s + \\s + =========================================================\\ + \"""); + } + void log(String s) {} + } + """ + ) + ); + } + @Test void preserveTrailingWhiteSpaces() { rewriteRun( @@ -526,49 +569,6 @@ void textBlockDemo() { assertThat(s1).isEqualTo(s2).isEqualTo(s3); } - @DocumentExample - @Test - void newlineAtBeginningOfLines() { - rewriteRun( - //language=java - java( - """ - class A { - void welcome() { - log("\\n=========================================================" - + "\\n " - + "\\n Welcome to Spring Integration! " - + "\\n " - + "\\n For more information please visit: " - + "\\n https://www.springsource.org/spring-integration " - + "\\n " - + "\\n========================================================="); - } - void log(String s) {} - } - """, - """ - class A { - void welcome() { - log(\""" - \s - ========================================================= - \\s - Welcome to Spring Integration! \\s - \\s - For more information please visit: \\s - https://www.springsource.org/spring-integration \\s - \\s - =========================================================\\ - \"""); - } - void log(String s) {} - } - """ - ) - ); - } - @Test void consecutiveNewLines() { rewriteRun( diff --git a/src/test/java/org/openrewrite/java/migrate/lang/UseVarKeywordTest.java b/src/test/java/org/openrewrite/java/migrate/lang/UseVarKeywordTest.java index c6895b48b8..b44271bde8 100644 --- a/src/test/java/org/openrewrite/java/migrate/lang/UseVarKeywordTest.java +++ b/src/test/java/org/openrewrite/java/migrate/lang/UseVarKeywordTest.java @@ -696,8 +696,10 @@ void m() { @Nested class Applicable { + @Test - void ifWelldefined() { + @DocumentExample + void withDiamondOperator() { //language=java rewriteRun( java( @@ -709,7 +711,7 @@ void ifWelldefined() { class A { void m() { - List strs = new ArrayList(); + List strs = new ArrayList<>(); } } """, @@ -727,21 +729,20 @@ void m() { ) ); } - @Test - void forNoDiamondOperators() { + void ifWelldefined() { //language=java rewriteRun( java( """ package com.example.app; - import java.util.ArrayList; import java.util.List; + import java.util.ArrayList; class A { void m() { - List strs = new ArrayList(); + List strs = new ArrayList(); } } """, @@ -752,7 +753,7 @@ void m() { class A { void m() { - var strs = new ArrayList(); + var strs = new ArrayList(); } } """ @@ -761,20 +762,19 @@ void m() { } @Test - @DocumentExample - void withDiamondOperator() { + void forNoDiamondOperators() { //language=java rewriteRun( java( """ package com.example.app; - import java.util.List; import java.util.ArrayList; + import java.util.List; class A { void m() { - List strs = new ArrayList<>(); + List strs = new ArrayList(); } } """, @@ -785,7 +785,7 @@ void m() { class A { void m() { - var strs = new ArrayList(); + var strs = new ArrayList(); } } """ diff --git a/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForGenericsConstructorsTest.java b/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForGenericsConstructorsTest.java index 7908b94e51..ebfb786301 100644 --- a/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForGenericsConstructorsTest.java +++ b/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForGenericsConstructorsTest.java @@ -332,7 +332,8 @@ void twoParams() { } @Test - void ifWelldefined() { + @DocumentExample + void withTypeParameterInDefinitionOnly() { //language=java rewriteRun( version( @@ -344,7 +345,7 @@ void ifWelldefined() { class A { void m() { - List strs = new ArrayList(); + List strs = new ArrayList<>(); } } """, """ @@ -364,7 +365,7 @@ void m() { } @Test - void arrayAsType() { + void ifWelldefined() { //language=java rewriteRun( version( @@ -376,7 +377,7 @@ void arrayAsType() { class A { void m() { - List strs = new ArrayList<>(); + List strs = new ArrayList(); } } """, """ @@ -386,7 +387,7 @@ void m() { class A { void m() { - var strs = new ArrayList(); + var strs = new ArrayList(); } } """), @@ -396,22 +397,30 @@ void m() { } @Test - void twoParamsWithBounds() { + void arrayAsType() { //language=java rewriteRun( version( java(""" package com.example.app; - import java.util.Map; - import java.util.LinkedHashMap; + import java.util.List; + import java.util.ArrayList; - class AbstractOAuth2Configurer {} + class A { + void m() { + List strs = new ArrayList<>(); + } + } + """, """ + package com.example.app; + + import java.util.ArrayList; class A { - void twoParams() { - Map, AbstractOAuth2Configurer> configurers = new LinkedHashMap<>(); - } + void m() { + var strs = new ArrayList(); + } } """), 10 @@ -420,31 +429,22 @@ void twoParams() { } @Test - @DocumentExample - void withTypeParameterInDefinitionOnly() { + void twoParamsWithBounds() { //language=java rewriteRun( version( java(""" package com.example.app; - import java.util.List; - import java.util.ArrayList; - - class A { - void m() { - List strs = new ArrayList<>(); - } - } - """, """ - package com.example.app; + import java.util.Map; + import java.util.LinkedHashMap; - import java.util.ArrayList; + class AbstractOAuth2Configurer {} class A { - void m() { - var strs = new ArrayList(); - } + void twoParams() { + Map, AbstractOAuth2Configurer> configurers = new LinkedHashMap<>(); + } } """), 10 diff --git a/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForObjectsTest.java b/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForObjectsTest.java index 582cdbbfea..20625f02ff 100644 --- a/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForObjectsTest.java +++ b/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForObjectsTest.java @@ -62,29 +62,23 @@ void m() { ); } - @Test - void reassignment() { + @DocumentExample + void withModifier() { //language=java rewriteRun( java( """ - package com.example.app; - class A { - Object o = new Object(); void m() { - Object innerO = o; + final Object o = new Object(); } } """, """ - package com.example.app; - class A { - Object o = new Object(); void m() { - var innerO = o; + final var o = new Object(); } } """ @@ -92,23 +86,29 @@ void m() { ); } + @Test - @DocumentExample - void withModifier() { + void reassignment() { //language=java rewriteRun( java( """ + package com.example.app; + class A { + Object o = new Object(); void m() { - final Object o = new Object(); + Object innerO = o; } } """, """ + package com.example.app; + class A { + Object o = new Object(); void m() { - final var o = new Object(); + var innerO = o; } } """ diff --git a/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForPrimitiveTest.java b/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForPrimitiveTest.java index 97936d64d2..54430ec2de 100644 --- a/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForPrimitiveTest.java +++ b/src/test/java/org/openrewrite/java/migrate/lang/var/UseVarForPrimitiveTest.java @@ -73,7 +73,8 @@ void m() { class Applicable { @Test - void forBoolean() { + @DocumentExample + void forChar() { //language=java rewriteRun( java( @@ -82,7 +83,7 @@ void forBoolean() { class A { void m() { - boolean b = true; + char ch = '\ufffd'; } } """, @@ -91,7 +92,7 @@ void m() { class A { void m() { - var b = true; + var ch = '\ufffd'; } } """ @@ -100,8 +101,7 @@ void m() { } @Test - @DocumentExample - void forChar() { + void forBoolean() { //language=java rewriteRun( java( @@ -110,7 +110,7 @@ void forChar() { class A { void m() { - char ch = '\ufffd'; + boolean b = true; } } """, @@ -119,7 +119,7 @@ void m() { class A { void m() { - var ch = '\ufffd'; + var b = true; } } """ diff --git a/src/test/java/org/openrewrite/java/migrate/lombok/LombokValueToRecordTest.java b/src/test/java/org/openrewrite/java/migrate/lombok/LombokValueToRecordTest.java index e7bb7045c0..c1476ef01e 100644 --- a/src/test/java/org/openrewrite/java/migrate/lombok/LombokValueToRecordTest.java +++ b/src/test/java/org/openrewrite/java/migrate/lombok/LombokValueToRecordTest.java @@ -40,40 +40,6 @@ public void defaults(RecipeSpec spec) { ); } - @Test - void valueAnnotatedClassWithUseExactOptionKeepsLombokToString() { - //language=java - rewriteRun( - s -> s.recipe(new LombokValueToRecord(true)), - java( - """ - import lombok.Value; - - @Value - public class Test { - String field1; - - String field2; - } - """, - """ - public record Test( - String field1, - - String field2) { - @Override - public String toString() { - return "Test(" + - "field1=" + field1 + ", " + - "field2=" + field2 + - ")"; - } - } - """ - ) - ); - } - @Test @DocumentExample @Issue("https://github.com/openrewrite/rewrite-migrate-java/issues/141") @@ -138,6 +104,40 @@ public String getRecordValue() { ); } + @Test + void valueAnnotatedClassWithUseExactOptionKeepsLombokToString() { + //language=java + rewriteRun( + s -> s.recipe(new LombokValueToRecord(true)), + java( + """ + import lombok.Value; + + @Value + public class Test { + String field1; + + String field2; + } + """, + """ + public record Test( + String field1, + + String field2) { + @Override + public String toString() { + return "Test(" + + "field1=" + field1 + ", " + + "field2=" + field2 + + ")"; + } + } + """ + ) + ); + } + @Test void onlyRemoveAnnotationFromRecords() { //language=java diff --git a/src/test/java/org/openrewrite/java/migrate/util/MigrateCollectionsSingletonListTest.java b/src/test/java/org/openrewrite/java/migrate/util/MigrateCollectionsSingletonListTest.java index ab9d18d924..1f7e7024f1 100644 --- a/src/test/java/org/openrewrite/java/migrate/util/MigrateCollectionsSingletonListTest.java +++ b/src/test/java/org/openrewrite/java/migrate/util/MigrateCollectionsSingletonListTest.java @@ -33,6 +33,31 @@ public void defaults(RecipeSpec spec) { .allSources(s -> s.markers(javaVersion(9))); } + @DocumentExample + @Issue("https://github.com/openrewrite/rewrite-migrate-java/issues/72") + @Test + void singletonList() { + rewriteRun( + //language=java + java( + """ + import java.util.*; + + class Test { + List list = Collections.singletonList("ABC"); + } + """, + """ + import java.util.List; + + class Test { + List list = List.of("ABC"); + } + """ + ) + ); + } + @Issue("https://github.com/openrewrite/rewrite-migrate-java/issues/186") @Test void templateError() { @@ -83,31 +108,6 @@ public void onCreate() { ); } - @DocumentExample - @Issue("https://github.com/openrewrite/rewrite-migrate-java/issues/72") - @Test - void singletonList() { - rewriteRun( - //language=java - java( - """ - import java.util.*; - - class Test { - List list = Collections.singletonList("ABC"); - } - """, - """ - import java.util.List; - - class Test { - List list = List.of("ABC"); - } - """ - ) - ); - } - @Issue("https://github.com/openrewrite/rewrite-migrate-java/issues/72") @Test void singletonListStaticImport() {