From 4ce3f8736162fed376879278f27e9b8f7d4ff093 Mon Sep 17 00:00:00 2001 From: "sebastian.sellmair" Date: Fri, 23 Jul 2021 15:04:54 +0200 Subject: [PATCH] [Gradle] CommonizerIT: Add failing test when depending on project without c-interops Adapted existing `test KT-47641 commonizing c-interops does not depend on any source compilation` to add a project dependency from a project with c-interops (p2) to a project without any c-interops (p0) This leads to compilation of project p0, since the cinteropApiElements configuration was not created on p0 --- .../org/jetbrains/kotlin/gradle/CommonizerIT.kt | 1 + .../p0/build.gradle.kts | 14 ++++++++++++++ .../p0/src/commonMain/kotlin/P0CommonMain.kt | 1 + .../p2/build.gradle.kts | 1 + .../settings.gradle.kts | 1 + 5 files changed, 18 insertions(+) create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p0/build.gradle.kts create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p0/src/commonMain/kotlin/P0CommonMain.kt diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/CommonizerIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/CommonizerIT.kt index 724f1ffabd9..a5363d950f9 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/CommonizerIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/CommonizerIT.kt @@ -365,6 +365,7 @@ class CommonizerIT : BaseGradleIT() { assertTasksRegisteredRegex(":p2.*compile.*") /* CInterops *shall not* require any compilation */ + assertTasksNotExecuted(":p0.*compile.*") assertTasksNotExecuted(":p1.*compile.*") assertTasksNotExecuted(":p2.*compile.*") } diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p0/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p0/build.gradle.kts new file mode 100644 index 00000000000..86208e6fd4d --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p0/build.gradle.kts @@ -0,0 +1,14 @@ +import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTarget + +plugins { + kotlin("multiplatform") +} + +kotlin { + jvm() + js().nodejs() + linuxX64() + macosX64() + mingwX64("windowsX64") + mingwX86("windowsX86") +} diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p0/src/commonMain/kotlin/P0CommonMain.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p0/src/commonMain/kotlin/P0CommonMain.kt new file mode 100644 index 00000000000..793cd55e5b9 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p0/src/commonMain/kotlin/P0CommonMain.kt @@ -0,0 +1 @@ +object P0CommonMain \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p2/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p2/build.gradle.kts index 48b5ef245b2..36c878d6e14 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p2/build.gradle.kts +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/p2/build.gradle.kts @@ -17,6 +17,7 @@ kotlin { commonMain.dependencies { implementation(project(":p1")) + implementation(project(":p0")) } targets.withType().forEach { target -> diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/settings.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/settings.gradle.kts index 41b18421c9b..9057acf36fa 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/settings.gradle.kts +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/commonize-kt-47641-cinterops-compilation-dependency/settings.gradle.kts @@ -9,5 +9,6 @@ pluginManagement { } } +include(":p0") include(":p1") include(":p2")