From 801c5467845d3c9cff6807f6ca890e73470b25c7 Mon Sep 17 00:00:00 2001 From: Simon Hutchinson Date: Tue, 17 Sep 2024 17:51:19 +0100 Subject: [PATCH] Add test for relocating a dependency in an subproject --- .../gradle/ChangeDependencyTest.java | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/rewrite-gradle/src/test/java/org/openrewrite/gradle/ChangeDependencyTest.java b/rewrite-gradle/src/test/java/org/openrewrite/gradle/ChangeDependencyTest.java index decf3758ce9..1dcddeb33c0 100644 --- a/rewrite-gradle/src/test/java/org/openrewrite/gradle/ChangeDependencyTest.java +++ b/rewrite-gradle/src/test/java/org/openrewrite/gradle/ChangeDependencyTest.java @@ -21,6 +21,7 @@ import org.openrewrite.test.RewriteTest; import static org.openrewrite.gradle.Assertions.buildGradle; +import static org.openrewrite.gradle.Assertions.settingsGradle; import static org.openrewrite.gradle.toolingapi.Assertions.withToolingApi; class ChangeDependencyTest implements RewriteTest { @@ -445,4 +446,59 @@ void relocateDependencyInJvmTestSuite() { ) ); } + + @Test + void relocateDependencyInSubproject() { + rewriteRun( + spec -> spec.recipe(new ChangeDependency("javax.servlet", "javax.servlet-api", "jakarta.servlet", "jakarta.servlet-api", "6.1.0", null, null)), + buildGradle( + """ + plugins { + id 'java' + id 'org.openrewrite.rewrite' version '6.23.3' + } + + repositories { + mavenCentral() + } + """, + spec -> spec.path("build.gradle") + ), + settingsGradle( + """ + rootProject.name = 'my-project' + include("moduleA") + """ + ), + buildGradle( + """ + plugins { + id 'java' + } + + repositories { + mavenCentral() + } + + dependencies { + compileOnly 'javax.servlet:javax.servlet-api:3.0.1' + } + """, + """ + plugins { + id 'java' + } + + repositories { + mavenCentral() + } + + dependencies { + compileOnly 'jakarta.servlet:jakarta.servlet-api:6.1.0' + } + """, + spec -> spec.path("moduleA/build.gradle") + ) + ); + } }