diff --git a/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/HierarchicalMultiplatformProjectImportingTest.kt b/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/HierarchicalMultiplatformProjectImportingTest.kt index cf47aaaadff..35f7d3f14fb 100644 --- a/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/HierarchicalMultiplatformProjectImportingTest.kt +++ b/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/HierarchicalMultiplatformProjectImportingTest.kt @@ -11,6 +11,7 @@ import org.jetbrains.jps.model.java.JavaSourceRootType import org.jetbrains.kotlin.config.* import org.jetbrains.kotlin.idea.codeInsight.gradle.MultiplePluginVersionGradleImportingTestCase import org.jetbrains.kotlin.idea.codeInsight.gradle.mppImportTestMinVersionForMaster +import org.jetbrains.kotlin.konan.target.KonanTarget import org.jetbrains.kotlin.platform.js.JsPlatforms import org.jetbrains.kotlin.platform.jvm.JvmPlatforms import org.jetbrains.kotlin.platform.konan.NativePlatforms @@ -101,6 +102,7 @@ class HierarchicalMultiplatformProjectImportingTest : MultiplePluginVersionGradl moduleDependency("my-app.commonMain", DependencyScope.TEST) moduleDependency("my-app.commonTest", DependencyScope.TEST) moduleDependency("my-app.jsMain", DependencyScope.TEST) + moduleDependency("my-app.jsMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved moduleDependency("my-app.jvmAndJsMain", DependencyScope.TEST) moduleDependency("my-app.jvmAndJsTest", DependencyScope.TEST) moduleDependency("my-app.linuxAndJsMain", DependencyScope.TEST) @@ -160,6 +162,7 @@ class HierarchicalMultiplatformProjectImportingTest : MultiplePluginVersionGradl moduleDependency("my-app.jvmAndJsMain", DependencyScope.TEST) moduleDependency("my-app.jvmAndJsTest", DependencyScope.TEST) moduleDependency("my-app.jvmMain", DependencyScope.TEST) + moduleDependency("my-app.jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved sourceFolder("src/jvmTest/kotlin", JavaSourceRootType.TEST_SOURCE) sourceFolder("src/jvmTest/resources", JavaResourceRootType.TEST_RESOURCE) } @@ -188,7 +191,7 @@ class HierarchicalMultiplatformProjectImportingTest : MultiplePluginVersionGradl module("my-app.linuxX64Main") { isHMPP(true) - targetPlatform(NativePlatforms.unspecifiedNativePlatform) + targetPlatform(NativePlatforms.nativePlatformBySingleTarget(KonanTarget.LINUX_X64)) libraryDependency("Gradle: org.jetbrains.kotlin:kotlin-stdlib-common:${gradleKotlinPluginVersion}", DependencyScope.COMPILE) libraryDependency("Kotlin/Native ${gradleKotlinPluginVersion} - builtin [linux_x64]", DependencyScope.PROVIDED) libraryDependency("Kotlin/Native ${gradleKotlinPluginVersion} - iconv [linux_x64]", DependencyScope.PROVIDED) @@ -204,7 +207,7 @@ class HierarchicalMultiplatformProjectImportingTest : MultiplePluginVersionGradl module("my-app.linuxX64Test") { isHMPP(true) - targetPlatform(NativePlatforms.unspecifiedNativePlatform) + targetPlatform(NativePlatforms.nativePlatformBySingleTarget(KonanTarget.LINUX_X64)) libraryDependency("Gradle: org.jetbrains.kotlin:kotlin-stdlib-common:${gradleKotlinPluginVersion}", DependencyScope.TEST) libraryDependency("Gradle: org.jetbrains.kotlin:kotlin-test-annotations-common:${gradleKotlinPluginVersion}", DependencyScope.TEST) libraryDependency("Gradle: org.jetbrains.kotlin:kotlin-test-common:${gradleKotlinPluginVersion}", DependencyScope.TEST) @@ -268,6 +271,7 @@ class HierarchicalMultiplatformProjectImportingTest : MultiplePluginVersionGradl moduleDependency("jvm-on-mpp.hmpp-mod-a.commonMain", DependencyScope.TEST) moduleDependency("jvm-on-mpp.hmpp-mod-a.commonTest", DependencyScope.TEST) moduleDependency("jvm-on-mpp.hmpp-mod-a.jsMain", DependencyScope.TEST) + moduleDependency("jvm-on-mpp.hmpp-mod-a.jsMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved moduleDependency("jvm-on-mpp.hmpp-mod-a.jvmAndJsMain", DependencyScope.TEST) moduleDependency("jvm-on-mpp.hmpp-mod-a.jvmAndJsTest", DependencyScope.TEST) moduleDependency("jvm-on-mpp.hmpp-mod-a.linuxAndJsMain", DependencyScope.TEST) @@ -295,7 +299,7 @@ class HierarchicalMultiplatformProjectImportingTest : MultiplePluginVersionGradl moduleDependency("jvm-on-mpp.hmpp-mod-a.jvmAndJsMain", DependencyScope.TEST) moduleDependency("jvm-on-mpp.hmpp-mod-a.jvmAndJsTest", DependencyScope.TEST) moduleDependency("jvm-on-mpp.hmpp-mod-a.jvmMain", DependencyScope.TEST) - + moduleDependency("jvm-on-mpp.hmpp-mod-a.jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved } module("jvm-on-mpp.hmpp-mod-a.linuxAndJsMain") { moduleDependency("jvm-on-mpp.hmpp-mod-a.commonMain", DependencyScope.COMPILE) diff --git a/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/NewMultiplatformProjectImportingTest.kt b/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/NewMultiplatformProjectImportingTest.kt index 5958c7f67ab..7347ebc7257 100644 --- a/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/NewMultiplatformProjectImportingTest.kt +++ b/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/NewMultiplatformProjectImportingTest.kt @@ -22,6 +22,7 @@ import org.junit.After import org.junit.Before import org.junit.Test +//ToDo: Need to remove RUNTIME dependencies when KT-40551 is resolved class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportingTestCase() { @Before @@ -101,6 +102,7 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin moduleDependency("app_commonMain", DependencyScope.TEST) moduleDependency("app_commonTest", DependencyScope.TEST) moduleDependency("app_jsMain", DependencyScope.TEST) + moduleDependency("app_jsMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved sourceFolder("app/src/jsTest/kotlin", TestSourceKotlinRootType) sourceFolder("app/src/jsTest/resources", TestResourceKotlinRootType) outputPath("app/build/classes/kotlin/js/test", false) @@ -188,6 +190,7 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin moduleDependency("lib_commonMain", DependencyScope.TEST) moduleDependency("lib_commonTest", DependencyScope.TEST) moduleDependency("lib_jsMain", DependencyScope.TEST) + moduleDependency("lib_jsMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved sourceFolder("lib/src/jsTest/kotlin", TestSourceKotlinRootType) sourceFolder("lib/src/jsTest/resources", TestResourceKotlinRootType) outputPath("lib/build/classes/kotlin/js/test", false) @@ -210,6 +213,7 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin moduleDependency("lib_commonTest", DependencyScope.TEST) moduleDependency("lib_commonMain", DependencyScope.TEST) moduleDependency("lib_jvmMain", DependencyScope.TEST) + moduleDependency("lib_jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved sourceFolder("lib/src/jvmTest/kotlin", JavaSourceRootType.TEST_SOURCE) sourceFolder("lib/src/jvmTest/resources", JavaResourceRootType.TEST_RESOURCE) outputPath("lib/build/classes/kotlin/jvm/test", false) @@ -385,6 +389,7 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin moduleDependency("project_commonMain", DependencyScope.TEST) moduleDependency("project_commonTest", DependencyScope.TEST) moduleDependency("project_jvmMain", DependencyScope.TEST) + moduleDependency("project_jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved } } @@ -505,6 +510,7 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin moduleDependency("project_commonMain", DependencyScope.TEST) moduleDependency("project_commonTest", DependencyScope.TEST) moduleDependency("project_jvmMain", DependencyScope.TEST) + moduleDependency("project_jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved } module("subproject") @@ -522,10 +528,13 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin } module("subproject_jvmTest") { moduleDependency("project_commonMain", DependencyScope.TEST) + moduleDependency("project_commonMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved moduleDependency("subproject_commonMain", DependencyScope.TEST) moduleDependency("subproject_commonTest", DependencyScope.TEST) moduleDependency("project_jvmMain", DependencyScope.TEST) + moduleDependency("project_jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved moduleDependency("subproject_jvmMain", DependencyScope.TEST) + moduleDependency("subproject_jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved } } @@ -715,8 +724,11 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin moduleDependency("project.mpp.commonMain", DependencyScope.TEST) moduleDependency("project.mpp.commonTest", DependencyScope.TEST, true) moduleDependency("project.mpp-base.commonMain", DependencyScope.TEST) + moduleDependency("project.mpp-base.commonMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved moduleDependency("project.mpp-base.jvmMain", DependencyScope.TEST) + moduleDependency("project.mpp-base.jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved moduleDependency("project.mpp.jvmMain", DependencyScope.TEST) + moduleDependency("project.mpp.jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved } module("project.mpp-base") {} @@ -730,6 +742,7 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin module("project.mpp-base.jvmTest") { moduleDependency("project.mpp-base.commonMain", DependencyScope.TEST) moduleDependency("project.mpp-base.jvmMain", DependencyScope.TEST) + moduleDependency("project.mpp-base.jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved moduleDependency("project.mpp-base.commonTest", DependencyScope.TEST, true) } } @@ -776,6 +789,7 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin moduleDependency("mpp-jardep.library1.commonMain", DependencyScope.TEST) moduleDependency("mpp-jardep.library1.commonTest", DependencyScope.TEST, true) moduleDependency("mpp-jardep.library1.jvmMain", DependencyScope.TEST) + moduleDependency("mpp-jardep.library1.jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved } module("mpp-jardep.library2") {} @@ -792,10 +806,13 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin } module("mpp-jardep.library2.jvmTest") { moduleDependency("mpp-jardep.library1.commonMain", DependencyScope.TEST) + moduleDependency("mpp-jardep.library1.commonMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved moduleDependency("mpp-jardep.library1.jvmMain", DependencyScope.TEST) + moduleDependency("mpp-jardep.library1.jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved moduleDependency("mpp-jardep.library2.commonMain", DependencyScope.TEST) moduleDependency("mpp-jardep.library2.commonTest", DependencyScope.TEST, true) moduleDependency("mpp-jardep.library2.jvmMain", DependencyScope.TEST) + moduleDependency("mpp-jardep.library2.jvmMain", DependencyScope.RUNTIME) // Temporary dependency, need to remove after KT-40551 is solved } } } @@ -847,6 +864,7 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin } module("jvm-on-mpp.mpp-mod-a.jsTest") { moduleDependency("jvm-on-mpp.mpp-mod-a.jsMain", DependencyScope.TEST, false) + moduleDependency("jvm-on-mpp.mpp-mod-a.jsMain", DependencyScope.RUNTIME, false) // Temporary dependency, need to remove after KT-40551 is solved moduleDependency("jvm-on-mpp.mpp-mod-a.commonMain", DependencyScope.TEST, false) moduleDependency("jvm-on-mpp.mpp-mod-a.commonTest", DependencyScope.TEST, true) } @@ -857,6 +875,7 @@ class NewMultiplatformProjectImportingTest : MultiplePluginVersionGradleImportin moduleDependency("jvm-on-mpp.mpp-mod-a.commonMain", DependencyScope.TEST, false) moduleDependency("jvm-on-mpp.mpp-mod-a.commonTest", DependencyScope.TEST, true) moduleDependency("jvm-on-mpp.mpp-mod-a.jvmMain", DependencyScope.TEST, false) + moduleDependency("jvm-on-mpp.mpp-mod-a.jvmMain", DependencyScope.RUNTIME, false) // Temporary dependency, need to remove after KT-40551 is solved } //At the moment this is 'fake' source roots and they have no explicit dependencies. diff --git a/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/projectStructureDSL.kt b/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/projectStructureDSL.kt index 3f0965e0ad5..c813198d91e 100644 --- a/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/projectStructureDSL.kt +++ b/idea/idea-gradle/tests/org/jetbrains/kotlin/gradle/projectStructureDSL.kt @@ -87,7 +87,7 @@ class ModuleInfo( val projectInfo: ProjectInfo ) { private val rootModel = module.rootManager - private val expectedDependencyNames = HashSet() + private val expectedDependencyNames = ArrayList() private val expectedSourceRoots = HashSet() private val expectedExternalSystemTestTasks = ArrayList() @@ -200,7 +200,8 @@ class ModuleInfo( } fun moduleDependency(moduleName: String, scope: DependencyScope, productionOnTest: Boolean? = null) { - val moduleEntries = rootModel.orderEntries.filterIsInstance().filter { it.moduleName == moduleName } + val moduleEntries = + rootModel.orderEntries.filterIsInstance().filter { it.moduleName == moduleName && it.scope == scope} if (moduleEntries.size > 1) { projectInfo.messageCollector.report( "Found multiple order entries for module $moduleName: ${rootModel.orderEntries.filterIsInstance()}"