From 240983bca47a1bbb7cf6b66419ba84250386730d Mon Sep 17 00:00:00 2001 From: Martin Bonnin Date: Fri, 9 Dec 2022 16:59:36 +0100 Subject: [PATCH] [Gradle] add a reproducer project for KT-52172 Cherry Picked from: https://github.com/JetBrains/kotlin/pull/5045 --- .../mpp-composite-build/build.gradle.kts | 28 +++++++++++++++++++ .../included-build/build.gradle.kts | 7 +++++ .../included-build/included/build.gradle.kts | 10 +++++++ .../src/commonMain/kotlin/included/Hello.kt | 7 +++++ .../src/jsMain/kotlin/included/sourceSet.kt | 4 +++ .../src/jvmMain/kotlin/included/sourceSet.kt | 4 +++ .../included-build/settings.gradle.kts | 7 +++++ .../mpp-composite-build/settings.gradle.kts | 1 + .../src/commonMain/kotlin/com/example/Main.kt | 7 +++++ .../commonTest/kotlin/com/example/MainTest.kt | 11 ++++++++ 10 files changed, 86 insertions(+) create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/build.gradle.kts create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/build.gradle.kts create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/build.gradle.kts create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/commonMain/kotlin/included/Hello.kt create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/jsMain/kotlin/included/sourceSet.kt create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/jvmMain/kotlin/included/sourceSet.kt create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/settings.gradle.kts create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/settings.gradle.kts create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/src/commonMain/kotlin/com/example/Main.kt create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/src/commonTest/kotlin/com/example/MainTest.kt diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/build.gradle.kts new file mode 100644 index 00000000000..2360047205b --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/build.gradle.kts @@ -0,0 +1,28 @@ +plugins { + id("org.jetbrains.kotlin.multiplatform").version("1.7.21") +} + +repositories { + mavenCentral() +} + +kotlin { + jvm() + js(IR) { + nodejs() + } + + sourceSets { + val commonMain by getting { + dependencies { + implementation("included-build:included") + } + } + val commonTest by getting { + dependencies { + implementation("org.jetbrains.kotlin:kotlin-test") + } + } + } +} + diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/build.gradle.kts new file mode 100644 index 00000000000..1236a0ca4e0 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/build.gradle.kts @@ -0,0 +1,7 @@ +plugins { + id("org.jetbrains.kotlin.multiplatform").version("1.7.21").apply(false) +} + + +group = "included-build" +version = "0.0.1" diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/build.gradle.kts new file mode 100644 index 00000000000..7ab32b0d61a --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/build.gradle.kts @@ -0,0 +1,10 @@ +plugins { + id("org.jetbrains.kotlin.multiplatform") +} + +kotlin { + jvm() + js(IR) { + nodejs() + } +} diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/commonMain/kotlin/included/Hello.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/commonMain/kotlin/included/Hello.kt new file mode 100644 index 00000000000..a6bfac946e8 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/commonMain/kotlin/included/Hello.kt @@ -0,0 +1,7 @@ +package included + +expect val sourceSet: String + +fun greet() { + println("Hello from sourceSet $sourceSet") +} diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/jsMain/kotlin/included/sourceSet.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/jsMain/kotlin/included/sourceSet.kt new file mode 100644 index 00000000000..c7d5045dc8b --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/jsMain/kotlin/included/sourceSet.kt @@ -0,0 +1,4 @@ +package included + +actual val sourceSet: String + get() = "jsMain" \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/jvmMain/kotlin/included/sourceSet.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/jvmMain/kotlin/included/sourceSet.kt new file mode 100644 index 00000000000..8eed923b2bc --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/included/src/jvmMain/kotlin/included/sourceSet.kt @@ -0,0 +1,4 @@ +package included + +actual val sourceSet: String + get() = "jvmMain" \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/settings.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/settings.gradle.kts new file mode 100644 index 00000000000..3df608b92a4 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/included-build/settings.gradle.kts @@ -0,0 +1,7 @@ +include("included") + +dependencyResolutionManagement { + repositories { + mavenCentral() + } +} \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/settings.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/settings.gradle.kts new file mode 100644 index 00000000000..d77f6b10894 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/settings.gradle.kts @@ -0,0 +1 @@ +includeBuild("included-build") \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/src/commonMain/kotlin/com/example/Main.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/src/commonMain/kotlin/com/example/Main.kt new file mode 100644 index 00000000000..2baa030f7a3 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/src/commonMain/kotlin/com/example/Main.kt @@ -0,0 +1,7 @@ +package com.example + +import included.greet + +fun main(args: Array) { + greet() +} \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/src/commonTest/kotlin/com/example/MainTest.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/src/commonTest/kotlin/com/example/MainTest.kt new file mode 100644 index 00000000000..85e6b65850d --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/mpp-composite-build/src/commonTest/kotlin/com/example/MainTest.kt @@ -0,0 +1,11 @@ +package com.example + +import included.greet +import kotlin.test.Test + +class MainTest { + @Test + fun test() { + greet() + } +} \ No newline at end of file