diff --git a/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleCompositeImportingTest.java b/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleCompositeImportingTest.java index e7981e014719..43e364ff0a5e 100644 --- a/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleCompositeImportingTest.java +++ b/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleCompositeImportingTest.java @@ -22,7 +22,7 @@ import com.intellij.openapi.module.StdModuleTypes; import org.jetbrains.plugins.gradle.tooling.annotation.TargetVersions; import org.junit.Test; -import static com.intellij.openapi.roots.DependencyScope.*; +import static com.intellij.openapi.roots.DependencyScope.COMPILE; /** * @author Vladislav.Soroka @@ -135,7 +135,7 @@ public class GradleCompositeImportingTest extends GradleImportingTestCase { "runtime", "runtime-mod"); - assertModuleModuleDepScope("app", "runtime-mod", PROVIDED, TEST, RUNTIME); + assertMergedModuleCompileModuleDepScope("app", "runtime-mod"); } @@ -177,9 +177,9 @@ public class GradleCompositeImportingTest extends GradleImportingTestCase { "lib1", "lib1-runtime", "lib2", "lib2-runtime"); - assertModuleModuleDepScope("app", "app-runtime", PROVIDED, TEST, RUNTIME); - assertModuleModuleDepScope("app", "lib1-runtime", PROVIDED, TEST, RUNTIME); - assertModuleModuleDepScope("app", "lib2-runtime", PROVIDED, TEST, RUNTIME); + assertMergedModuleCompileModuleDepScope("app", "app-runtime"); + assertMergedModuleCompileModuleDepScope("app", "lib1-runtime"); + assertMergedModuleCompileModuleDepScope("app", "lib2-runtime"); } diff --git a/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleDependenciesImportingTest.java b/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleDependenciesImportingTest.java index ae5aba72a0ec..dea04a238057 100644 --- a/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleDependenciesImportingTest.java +++ b/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleDependenciesImportingTest.java @@ -467,7 +467,7 @@ public class GradleDependenciesImportingTest extends GradleImportingTestCase { assertMergedModuleCompileLibDepScope("project", "Gradle: unresolvable-lib-0.1:1"); unresolvableDep = getModuleLibDeps("project", "Gradle: unresolvable-lib-0.1:1"); - if (isGradleOlderThen_3_4()) { + if (isGradleOlderThen_3_4() || isGradleNewerThen_4_5()) { assertEquals(1, unresolvableDep.size()); unresolvableEntry = unresolvableDep.iterator().next(); assertTrue(unresolvableEntry.isModuleLevel()); @@ -638,10 +638,18 @@ public class GradleDependenciesImportingTest extends GradleImportingTestCase { assertModuleModuleDepScope("project-tests", "project2", DependencyScope.RUNTIME, DependencyScope.TEST); } if(GradleVersion.version(gradleVersion).compareTo(GradleVersion.version("2.0")) > 0) { - assertModuleLibDepScope("project-tests", "Gradle: org.apache.geronimo.specs:geronimo-jms_1.1_spec:1.0", - gradleOlderThen_3_4 ? ar(DependencyScope.COMPILE) : ar(DependencyScope.PROVIDED, DependencyScope.TEST)); - assertModuleLibDepScope("project-tests", "Gradle: org.apache.geronimo.specs:geronimo-jms_1.1_spec:1.1.1", - gradleOlderThen_3_4 ? ar(DependencyScope.RUNTIME) : ar(DependencyScope.RUNTIME, DependencyScope.TEST)); + if (isGradleNewerThen_4_5()) { + assertModuleLibDepScope("project-tests", "Gradle: org.apache.geronimo.specs:geronimo-jms_1.1_spec:1.0", + ar(DependencyScope.PROVIDED)); + assertModuleLibDepScope("project-tests", "Gradle: org.apache.geronimo.specs:geronimo-jms_1.1_spec:1.1.1", + ar(DependencyScope.RUNTIME, DependencyScope.TEST)); + } + else { + assertModuleLibDepScope("project-tests", "Gradle: org.apache.geronimo.specs:geronimo-jms_1.1_spec:1.0", + gradleOlderThen_3_4 ? ar(DependencyScope.COMPILE) : ar(DependencyScope.PROVIDED, DependencyScope.TEST)); + assertModuleLibDepScope("project-tests", "Gradle: org.apache.geronimo.specs:geronimo-jms_1.1_spec:1.1.1", + gradleOlderThen_3_4 ? ar(DependencyScope.RUNTIME) : ar(DependencyScope.RUNTIME, DependencyScope.TEST)); + } } } @@ -679,7 +687,15 @@ public class GradleDependenciesImportingTest extends GradleImportingTestCase { importProjectUsingSingeModulePerGradleProject(); assertModules("project", "project1", "project2"); - assertMergedModuleCompileModuleDepScope("project2", "project1"); + if (isGradleNewerThen_4_5()) { + assertModuleModuleDepScope("project2", "project1"); + } + else if (isGradleOlderThen_3_4()) { + assertModuleModuleDepScope("project2", "project1", DependencyScope.COMPILE); + } + else { + assertModuleModuleDepScope("project2", "project1", DependencyScope.PROVIDED, DependencyScope.TEST, DependencyScope.RUNTIME); + } if(GradleVersion.version(gradleVersion).compareTo(GradleVersion.version("2.0")) > 0) { assertMergedModuleCompileLibDepScope("project2", "Gradle: org.hamcrest:hamcrest-core:1.3"); assertMergedModuleCompileLibDepScope("project2", "Gradle: junit:junit:4.11"); @@ -1041,7 +1057,10 @@ public class GradleDependenciesImportingTest extends GradleImportingTestCase { importProjectUsingSingeModulePerGradleProject(); assertModules("project"); - if (isGradleOlderThen_3_4()) { + if (isGradleNewerThen_4_5()) { + assertModuleLibDepScope("project", "Gradle: org.hamcrest:hamcrest-core:1.3", DependencyScope.COMPILE); + } + else if (isGradleOlderThen_3_4()) { assertModuleLibDepScope("project", "Gradle: org.hamcrest:hamcrest-core:1.3", DependencyScope.PROVIDED, DependencyScope.RUNTIME); } else { assertModuleLibDepScope("project", "Gradle: org.hamcrest:hamcrest-core:1.3", DependencyScope.TEST, DependencyScope.PROVIDED, DependencyScope.RUNTIME); @@ -1155,6 +1174,9 @@ public class GradleDependenciesImportingTest extends GradleImportingTestCase { if (isGradleOlderThen_3_4()) { assertModuleLibDepScope("project", "Gradle: org.hamcrest:hamcrest-core:1.3", DependencyScope.PROVIDED, DependencyScope.RUNTIME); } + else if (isGradleNewerThen_4_5()) { + assertModuleLibDepScope("project", "Gradle: org.hamcrest:hamcrest-core:1.3", DependencyScope.COMPILE); + } else { assertModuleLibDepScope("project", "Gradle: org.hamcrest:hamcrest-core:1.3", DependencyScope.PROVIDED, DependencyScope.RUNTIME, DependencyScope.TEST); @@ -1262,10 +1284,10 @@ public class GradleDependenciesImportingTest extends GradleImportingTestCase { " \n" + " \n" + " \n" + - " \n" + - " \n" + " \n" + " \n" + + " \n" + + " \n" + " \n" + " \n" + "\n"); @@ -1309,27 +1331,4 @@ public class GradleDependenciesImportingTest extends GradleImportingTestCase { } assertMergedModuleCompileLibDepScope("project", depName); } - - private void assertMergedModuleCompileLibDepScope(String moduleName, String depName) { - if (isGradleOlderThen_3_4()) { - assertModuleLibDepScope(moduleName, depName, DependencyScope.COMPILE); - } - else { - assertModuleLibDepScope(moduleName, depName, DependencyScope.PROVIDED, DependencyScope.TEST, DependencyScope.RUNTIME); - } - } - - private void assertMergedModuleCompileModuleDepScope(String moduleName, String depName) { - if (isGradleOlderThen_3_4()) { - assertModuleModuleDepScope(moduleName, depName, DependencyScope.COMPILE); - } - else { - assertModuleModuleDepScope(moduleName, depName, DependencyScope.PROVIDED, DependencyScope.TEST, DependencyScope.RUNTIME); - } - } - - private boolean isGradleOlderThen_3_4() { - return GradleVersion.version(gradleVersion).getBaseVersion().compareTo(GradleVersion.version("3.4")) < 0; - } - } diff --git a/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleImportingTestCase.java b/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleImportingTestCase.java index a56486526c12..0e43ab324aca 100644 --- a/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleImportingTestCase.java +++ b/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleImportingTestCase.java @@ -27,6 +27,7 @@ import com.intellij.openapi.projectRoots.JavaSdk; import com.intellij.openapi.projectRoots.ProjectJdkTable; import com.intellij.openapi.projectRoots.Sdk; import com.intellij.openapi.projectRoots.impl.SdkConfigurationUtil; +import com.intellij.openapi.roots.DependencyScope; import com.intellij.openapi.ui.Messages; import com.intellij.openapi.ui.TestDialog; import com.intellij.openapi.util.io.FileUtil; @@ -148,7 +149,7 @@ public abstract class GradleImportingTestCase extends ExternalSystemImportingTes } @Parameterized.Parameters(name = "{index}: with Gradle-{0}") - public static Collection data() throws Throwable { + public static Collection data() { return Arrays.asList(SUPPORTED_GRADLE_VERSIONS); } @@ -276,4 +277,30 @@ public abstract class GradleImportingTestCase extends ExternalSystemImportingTes private static File wrapperJar() { return new File(PathUtil.getJarPathForClass(GradleWrapperMain.class)); } + + protected void assertMergedModuleCompileLibDepScope(String moduleName, String depName) { + if (isGradleOlderThen_3_4() || isGradleNewerThen_4_5()) { + assertModuleLibDepScope(moduleName, depName, DependencyScope.COMPILE); + } + else { + assertModuleLibDepScope(moduleName, depName, DependencyScope.PROVIDED, DependencyScope.TEST, DependencyScope.RUNTIME); + } + } + + protected void assertMergedModuleCompileModuleDepScope(String moduleName, String depName) { + if (isGradleOlderThen_3_4() || isGradleNewerThen_4_5()) { + assertModuleModuleDepScope(moduleName, depName, DependencyScope.COMPILE); + } + else { + assertModuleModuleDepScope(moduleName, depName, DependencyScope.PROVIDED, DependencyScope.TEST, DependencyScope.RUNTIME); + } + } + + protected boolean isGradleOlderThen_3_4() { + return GradleVersion.version(gradleVersion).getBaseVersion().compareTo(GradleVersion.version("3.4")) < 0; + } + + protected boolean isGradleNewerThen_4_5() { + return GradleVersion.version(gradleVersion).compareTo(GradleVersion.version("4.5")) > 0; + } } diff --git a/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleSettingsImportingTest.java b/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleSettingsImportingTest.java index 46e29994c029..70a9754abd35 100644 --- a/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleSettingsImportingTest.java +++ b/plugins/gradle/testSources/org/jetbrains/plugins/gradle/importing/GradleSettingsImportingTest.java @@ -67,7 +67,7 @@ public class GradleSettingsImportingTest extends GradleImportingTestCase { @SuppressWarnings("MethodOverridesStaticMethodOfSuperclass") @Parameterized.Parameters(name = "with Gradle-{0}") public static Collection data() { - return Arrays.asList(new Object[][]{{"4.5"}}); + return Arrays.asList(new Object[][]{{BASE_GRADLE_VERSION}}); } @Before diff --git a/plugins/gradle/tooling-extension-impl/testSources/org/jetbrains/plugins/gradle/tooling/builder/AbstractModelBuilderTest.java b/plugins/gradle/tooling-extension-impl/testSources/org/jetbrains/plugins/gradle/tooling/builder/AbstractModelBuilderTest.java index ac069c72f2d6..c042223e4f5c 100644 --- a/plugins/gradle/tooling-extension-impl/testSources/org/jetbrains/plugins/gradle/tooling/builder/AbstractModelBuilderTest.java +++ b/plugins/gradle/tooling-extension-impl/testSources/org/jetbrains/plugins/gradle/tooling/builder/AbstractModelBuilderTest.java @@ -71,7 +71,7 @@ public abstract class AbstractModelBuilderTest { // Support for builds using Gradle older than 2.6 was deprecated and will be removed in Gradle 5.0. {"2.6"}, /*{"2.7"}, {"2.8"},*/ {"2.9"}, /*{"2.10"}, {"2.11"}, {"2.12"}, {"2.13"}, */{"2.14.1"}, {"3.0"}, /*{"3.1"}, {"3.2"}, {"3.3"}, {"3.4"},*/ {"3.5"}, - {"4.0"}, /*{"4.1"}, {"4.2"}, {"4.3"},*/ {"4.4"}, + {"4.0"}, /*{"4.1"}, {"4.2"}, {"4.3"}, {"4.4"},*/ {"4.5.1"}, }; public static final String BASE_GRADLE_VERSION = String.valueOf(SUPPORTED_GRADLE_VERSIONS[SUPPORTED_GRADLE_VERSIONS.length - 1][0]);