From 1435fcc50fc213618b4c6bca6487624c7861e001 Mon Sep 17 00:00:00 2001 From: Timofey Solonin Date: Mon, 19 Feb 2024 02:47:01 +0100 Subject: [PATCH] Add an IT for consumption of multiplatform resources ^KT-65540 --- .../AndroidMultiplatformResourcesIT.kt | 8 +- .../MultiplatformResourcesConsumptionIT.kt | 227 ++++++++++++++++++ .../MultiplatformResourcesDependencyIT.kt | 4 +- .../MultiplatformResourcesPublicationIT.kt | 8 +- .../multiplatformResourcesITUtils.kt | 18 +- .../consumption/build.gradle.kts | 39 +++ .../consumption/dependency/build.gradle.kts | 66 +++++ .../multiplatformResources/onlyInAndroidMain | 1 + .../dependency/src/commonMain/kotlin/stub.kt | 0 .../multiplatformResources/inCommon | 1 + .../multiplatformResources/onlyInIOSArm64 | 1 + .../jvmMain/multiplatformResources/onlyInJvm | 1 + .../multiplatformResources/onlyInLinuxX64 | 1 + .../multiplatformResources/onlyInWasmJs | 1 + .../multiplatformResources/onlyInWasmWasi | 1 + .../embed/projectWithResources/inCommon | 1 + .../embed/projectWithResources/onlyInIOSArm64 | 1 + .../projectWithResourcesTransitive/inCommon | 1 + .../onlyInIOSArm64 | 1 + .../embed/publishedWithResources/inCommon | 1 + .../publishedWithResources/onlyInIOSArm64 | 1 + .../publishedWithResourcesTransitive/inCommon | 1 + .../onlyInIOSArm64 | 1 + .../embed/projectWithResources/inCommon | 1 + .../embed/projectWithResources/onlyInLinuxX64 | 1 + .../projectWithResourcesTransitive/inCommon | 1 + .../onlyInLinuxX64 | 1 + .../embed/publishedWithResources/inCommon | 1 + .../publishedWithResources/onlyInLinuxX64 | 1 + .../publishedWithResourcesTransitive/inCommon | 1 + .../onlyInLinuxX64 | 1 + .../embed/projectWithResources/inCommon | 1 + .../embed/projectWithResources/onlyInWasmJs | 1 + .../projectWithResourcesTransitive/inCommon | 1 + .../onlyInWasmJs | 1 + .../embed/publishedWithResources/inCommon | 1 + .../embed/publishedWithResources/onlyInWasmJs | 1 + .../publishedWithResourcesTransitive/inCommon | 1 + .../onlyInWasmJs | 1 + .../embed/projectWithResources/inCommon | 1 + .../embed/projectWithResources/onlyInWasmWasi | 1 + .../projectWithResourcesTransitive/inCommon | 1 + .../onlyInWasmWasi | 1 + .../embed/publishedWithResources/inCommon | 1 + .../publishedWithResources/onlyInWasmWasi | 1 + .../publishedWithResourcesTransitive/inCommon | 1 + .../onlyInWasmWasi | 1 + 47 files changed, 397 insertions(+), 12 deletions(-) create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesConsumptionIT.kt create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/build.gradle.kts create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/build.gradle.kts create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/androidMain/multiplatformResources/onlyInAndroidMain create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/commonMain/kotlin/stub.kt create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/commonMain/multiplatformResources/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/iosArm64Main/multiplatformResources/onlyInIOSArm64 create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/jvmMain/multiplatformResources/onlyInJvm create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/linuxX64Main/multiplatformResources/onlyInLinuxX64 create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/wasmJsMain/multiplatformResources/onlyInWasmJs create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/wasmWasiMain/multiplatformResources/onlyInWasmWasi create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResources/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResources/onlyInIOSArm64 create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResourcesTransitive/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResourcesTransitive/onlyInIOSArm64 create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResources/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResources/onlyInIOSArm64 create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResourcesTransitive/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResourcesTransitive/onlyInIOSArm64 create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResources/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResources/onlyInLinuxX64 create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResourcesTransitive/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResourcesTransitive/onlyInLinuxX64 create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResources/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResources/onlyInLinuxX64 create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResourcesTransitive/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResourcesTransitive/onlyInLinuxX64 create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResources/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResources/onlyInWasmJs create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResourcesTransitive/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResourcesTransitive/onlyInWasmJs create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResources/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResources/onlyInWasmJs create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResourcesTransitive/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResourcesTransitive/onlyInWasmJs create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResources/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResources/onlyInWasmWasi create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResourcesTransitive/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResourcesTransitive/onlyInWasmWasi create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResources/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResources/onlyInWasmWasi create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResourcesTransitive/inCommon create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResourcesTransitive/onlyInWasmWasi diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/AndroidMultiplatformResourcesIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/AndroidMultiplatformResourcesIT.kt index c4cb1bb65e6..3f4a579918b 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/AndroidMultiplatformResourcesIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/AndroidMultiplatformResourcesIT.kt @@ -43,8 +43,8 @@ class AndroidMultiplatformResourcesIT : KGPBaseTest() { buildWithAGPVersion( ":consumer:zipApksForDebug", - androidVersion, - defaultBuildOptions, + androidVersion = androidVersion, + defaultBuildOptions = defaultBuildOptions, ) val apkPath = projectPath.resolve("consumer/build/outputs/apk/debug/consumer-debug.apk") assertAssetsMatchReference(apkPath) @@ -100,8 +100,8 @@ class AndroidMultiplatformResourcesIT : KGPBaseTest() { ) { buildWithAGPVersion( ":publishAllPublicationsToMavenRepository", - androidVersion, - defaultBuildOptions, + androidVersion = androidVersion, + defaultBuildOptions = defaultBuildOptions, ) withRepositoryRoot(projectPath.resolve("build/repo")) } diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesConsumptionIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesConsumptionIT.kt new file mode 100644 index 00000000000..1b6f5d01865 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesConsumptionIT.kt @@ -0,0 +1,227 @@ +/* + * Copyright 2010-2024 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.gradle.mpp.resources + +import org.gradle.util.GradleVersion +import org.jetbrains.kotlin.gradle.plugin.mpp.resources.resolve.KotlinTargetResourcesResolutionStrategy +import org.jetbrains.kotlin.gradle.testbase.* +import org.jetbrains.kotlin.gradle.util.replaceText +import org.jetbrains.kotlin.incremental.testingUtils.assertEqualDirectoriesIgnoringDotFiles +import org.jetbrains.kotlin.konan.target.HostManager +import org.junit.jupiter.api.DisplayName +import java.nio.file.Path +import kotlin.io.path.name +import kotlin.io.path.pathString + +@MppGradlePluginTests +@AndroidTestVersions(minVersion = TestVersions.AGP.AGP_73) +@DisplayName("Test resources consumption APIs") +class MultiplatformResourcesConsumptionIT : KGPBaseTest() { + + @DisplayName("Resolve resources with consumption API using variant reselection") + // Before 7.6 Gradle fails to resolve project dependencies with variant reselection + @AndroidTestVersions(minVersion = TestVersions.AGP.AGP_74) + @GradleTestVersions(minVersion = TestVersions.Gradle.G_7_6) + @GradleAndroidTest + fun testWithVariantReselection( + gradleVersion: GradleVersion, + androidVersion: String, + providedJdk: JdkVersions.ProvidedJdk, + ) { + test(gradleVersion, androidVersion, providedJdk, KotlinTargetResourcesResolutionStrategy.VariantReselection) + } + + @DisplayName("Resolve resources with consumption API using resources configuration") + @GradleAndroidTest + fun testWithConfiguration( + gradleVersion: GradleVersion, + androidVersion: String, + providedJdk: JdkVersions.ProvidedJdk, + ) { + test(gradleVersion, androidVersion, providedJdk, KotlinTargetResourcesResolutionStrategy.ResourcesConfiguration) + } + + private fun test( + gradleVersion: GradleVersion, + androidVersion: String, + providedJdk: JdkVersions.ProvidedJdk, + resolutionStrategy: KotlinTargetResourcesResolutionStrategy, + ) { + project( + "multiplatformResources/consumption", + gradleVersion, + buildJdk = providedJdk.location, + ) { + val sharedRepo = projectPath.resolve("build/repo") + prepareProjectDependencies(gradleVersion, providedJdk, sharedRepo).forEach { + settingsGradleKts.append( + """ + include(":${it.name}") + project(":${it.name}").projectDir = File("${it.pathString}") + """.trimIndent() + ) + } + preparePublishedDependencies(gradleVersion, providedJdk, androidVersion, sharedRepo) + + // Gradle 7.4.2 doesn't pick up sharedRepo from build.gradle.kts and Gradle 8.5 doesn't pick it up from settings.gradle.kts + buildGradleKts.setUpRepositoriesInBuildGradleKts(sharedRepo) + settingsGradleKts.setUpRepositoriesInSettingGradleKts(sharedRepo) + + val resolvableTargets = listOf( + "linuxX64", + "wasmJs", + "wasmWasi", + ) + if (HostManager.hostIsMac) listOf("iosArm64") else emptyList() + + resolvableTargets.forEach { target -> + buildWithAGPVersion( + ":${target}ResolveResources", "-Pkotlin.mpp.resourcesResolutionStrategy=${resolutionStrategy.propertyName}", + androidVersion = androidVersion, + defaultBuildOptions = defaultBuildOptions, + ) { + assertEqualDirectoriesIgnoringDotFiles( + projectPath.resolve("reference/${target}").toFile(), + projectPath.resolve("build/${target}ResolvedResources").toFile(), + forgiveOtherExtraFiles = false, + ) + } + } + + // This platform is not provided in dependency variants + buildAndFailWithAGPVersion( + ":linuxArm64", + androidVersion = androidVersion, + defaultBuildOptions = defaultBuildOptions, + ) + } + } + + private fun prepareProjectDependencies( + gradleVersion: GradleVersion, + providedJdk: JdkVersions.ProvidedJdk, + publicationRepository: Path, + ): List { + val projectWithoutResources = project( + "multiplatformResources/consumption/dependency", + gradleVersion, + buildJdk = providedJdk.location, + projectPathAdditionalSuffix = "projectWithoutResources", + ) { + buildGradleKts.replaceText("", "implementation(project(\":projectWithResources\"))") + buildGradleKts.replaceText("", "false") + buildGradleKts.setUpRepositoriesInBuildGradleKts(publicationRepository) + } + val projectWithResources = project( + "multiplatformResources/consumption/dependency", + gradleVersion, + buildJdk = providedJdk.location, + projectPathAdditionalSuffix = "projectWithResources", + ) { + buildGradleKts.replaceText("", "implementation(project(\":projectWithResourcesTransitive\"))") + buildGradleKts.replaceText("", "true") + buildGradleKts.setUpRepositoriesInBuildGradleKts(publicationRepository) + } + val projectWithResourcesTransitive = project( + "multiplatformResources/consumption/dependency", + gradleVersion, + buildJdk = providedJdk.location, + projectPathAdditionalSuffix = "projectWithResourcesTransitive", + ) { + buildGradleKts.replaceText("", "") + buildGradleKts.replaceText("", "true") + buildGradleKts.setUpRepositoriesInBuildGradleKts(publicationRepository) + } + return listOf(projectWithoutResources, projectWithResources, projectWithResourcesTransitive).map { it.projectPath } + } + + private fun preparePublishedDependencies( + gradleVersion: GradleVersion, + providedJdk: JdkVersions.ProvidedJdk, + androidVersion: String, + publicationRepository: Path, + ) { + val publishedWithoutResources = project( + "multiplatformResources/consumption/dependency", + gradleVersion, + buildJdk = providedJdk.location, + projectPathAdditionalSuffix = "publishedWithoutResources", + localRepoDir = publicationRepository, + ) { + buildGradleKts.replaceText("", "implementation(\"test:publishedWithResources:+\")") + buildGradleKts.replaceText("", "false") + buildGradleKts.setUpPublishing(publicationRepository) + buildGradleKts.setUpRepositoriesInBuildGradleKts(publicationRepository) + } + val publishedWithResources = project( + "multiplatformResources/consumption/dependency", + gradleVersion, + buildJdk = providedJdk.location, + projectPathAdditionalSuffix = "publishedWithResources", + localRepoDir = publicationRepository, + ) { + buildGradleKts.replaceText("", "implementation(\"test:publishedWithResourcesTransitive:+\")") + buildGradleKts.replaceText("", "true") + buildGradleKts.setUpPublishing(publicationRepository) + buildGradleKts.setUpRepositoriesInBuildGradleKts(publicationRepository) + } + val publishedWithResourcesTransitive = project( + "multiplatformResources/consumption/dependency", + gradleVersion, + buildJdk = providedJdk.location, + projectPathAdditionalSuffix = "publishedWithResourcesTransitive", + localRepoDir = publicationRepository, + ) { + buildGradleKts.replaceText("", "") + buildGradleKts.replaceText("", "true") + buildGradleKts.setUpPublishing(publicationRepository) + buildGradleKts.setUpRepositoriesInBuildGradleKts(publicationRepository) + } + listOf(publishedWithResourcesTransitive, publishedWithResources, publishedWithoutResources).forEach { + it.buildWithAGPVersion( + ":publishAllPublicationsToMavenRepository", + androidVersion = androidVersion, + defaultBuildOptions = defaultBuildOptions, + ) + } + } + + private fun Path.setUpRepositoriesInBuildGradleKts(publicationRepository: Path) = append(repositories(publicationRepository)) + private fun Path.setUpRepositoriesInSettingGradleKts(publicationRepository: Path) = append( + """ + dependencyResolutionManagement { + ${repositories(publicationRepository)} + } + """.trimIndent() + ) + + private fun repositories(publicationRepository: Path): String { + return """ + repositories { + google() + mavenCentral() + mavenLocal() + maven { + url = uri("${publicationRepository.pathString}") + } + } + """.trimIndent() + } + + private fun Path.setUpPublishing(publicationRepository: Path) { + append( + """ + publishing { + repositories { + maven { + url = uri("${publicationRepository.pathString}") + } + } + } + """.trimIndent() + ) + } + +} \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesDependencyIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesDependencyIT.kt index f76f198b472..b86e4d7a5c2 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesDependencyIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesDependencyIT.kt @@ -80,8 +80,8 @@ class MultiplatformResourcesDependencyIT : KGPBaseTest() { ) { buildWithAGPVersion( ":publishAllPublicationsToMavenRepository", - androidVersion, - defaultBuildOptions, + androidVersion = androidVersion, + defaultBuildOptions = defaultBuildOptions, ) withRepositoryRoot(projectPath.resolve("build/repo")) } diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesPublicationIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesPublicationIT.kt index e99bb403c93..9786a581cd9 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesPublicationIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/MultiplatformResourcesPublicationIT.kt @@ -31,8 +31,8 @@ class MultiplatformResourcesPublicationIT : KGPBaseTest() { ) { buildWithAGPVersion( ":publishAndroidReleasePublicationToMavenRepository", - androidVersion, - defaultBuildOptions, + androidVersion = androidVersion, + defaultBuildOptions = defaultBuildOptions, ) val publishedAarPath = "build/repo/test/publication-android/1.0/publication-android-1.0.aar" val classesInAar = projectPath.resolve("classesInAar") @@ -189,8 +189,8 @@ class MultiplatformResourcesPublicationIT : KGPBaseTest() { ) { buildWithAGPVersion( publicationTask, - androidVersion, - defaultBuildOptions, + androidVersion = androidVersion, + defaultBuildOptions = defaultBuildOptions, ) compareEmbeddedResources( projectPath.resolve(publishedArchive), diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/multiplatformResourcesITUtils.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/multiplatformResourcesITUtils.kt index 42bfd0aca17..eaffc824c0b 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/multiplatformResourcesITUtils.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/mpp/resources/multiplatformResourcesITUtils.kt @@ -9,6 +9,7 @@ import org.gradle.testkit.runner.BuildResult import org.jetbrains.kotlin.gradle.testbase.BuildOptions import org.jetbrains.kotlin.gradle.testbase.TestProject import org.jetbrains.kotlin.gradle.testbase.build +import org.jetbrains.kotlin.gradle.testbase.buildAndFail import java.nio.file.Files import java.nio.file.Path import java.nio.file.Paths @@ -16,13 +17,26 @@ import java.nio.file.StandardCopyOption import java.util.zip.ZipFile fun TestProject.buildWithAGPVersion( - task: String, + vararg buildArguments: String, androidVersion: String, defaultBuildOptions: BuildOptions, assertions: BuildResult.() -> Unit = {}, ) { build( - task, + *buildArguments, + buildOptions = defaultBuildOptions.copy(androidVersion = androidVersion), + assertions = assertions, + ) +} + +fun TestProject.buildAndFailWithAGPVersion( + vararg buildArguments: String, + androidVersion: String, + defaultBuildOptions: BuildOptions, + assertions: BuildResult.() -> Unit = {}, +) { + buildAndFail( + *buildArguments, buildOptions = defaultBuildOptions.copy(androidVersion = androidVersion), assertions = assertions, ) diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/build.gradle.kts new file mode 100644 index 00000000000..757d7dbc99a --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/build.gradle.kts @@ -0,0 +1,39 @@ +@file:OptIn(ComposeKotlinGradlePluginApi::class) + +import org.jetbrains.kotlin.gradle.ComposeKotlinGradlePluginApi +import org.jetbrains.kotlin.gradle.plugin.mpp.resources.KotlinTargetResourcesPublication + +group = "test" +version = "1.0" + +plugins { + kotlin("multiplatform") + id("com.android.library") apply false +} + +kotlin { + val publication = project.ext.get( + KotlinTargetResourcesPublication.EXTENSION_NAME + ) as KotlinTargetResourcesPublication + + listOf( + linuxX64(), + iosArm64(), + iosSimulatorArm64(), + wasmJs(), + wasmWasi(), + ).forEach { target -> + val assemblyTask = publication.resolveResources(target) + tasks.register("${target.disambiguationClassifier}ResolveResources") { + from(assemblyTask) + into(layout.buildDirectory.dir("${target.disambiguationClassifier}ResolvedResources")) + } + } + + sourceSets.commonMain { + dependencies { + implementation("test:publishedWithoutResources:+") + implementation(project(":projectWithoutResources")) + } + } +} \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/build.gradle.kts new file mode 100644 index 00000000000..62e6060f4ff --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/build.gradle.kts @@ -0,0 +1,66 @@ +@file:OptIn(ComposeKotlinGradlePluginApi::class) + +import org.gradle.api.provider.Provider +import org.jetbrains.kotlin.gradle.ComposeKotlinGradlePluginApi +import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet +import org.jetbrains.kotlin.gradle.plugin.mpp.resources.KotlinTargetResourcesPublication +import java.io.File + +group = "test" +version = "1.0" + +plugins { + kotlin("multiplatform") + id("com.android.library") + `maven-publish` +} + +kotlin { + val publication = if () project.ext.get( + KotlinTargetResourcesPublication.EXTENSION_NAME + ) as KotlinTargetResourcesPublication else null + + listOf( + androidTarget { + publishAllLibraryVariants() + compilations.all { + kotlinOptions.jvmTarget = "1.8" + } + }, + jvm(), + linuxX64(), + iosArm64(), + wasmJs(), + wasmWasi(), + ).forEach { target -> + val relativeResourcePlacement = provider { File("embed/${project.name}") } + val sourceSetPathProvider: (KotlinSourceSet) -> (Provider) = { sourceSet -> + project.provider { project.file("src/${sourceSet.name}/multiplatformResources") } + } + publication?.publishResourcesAsKotlinComponent( + target = target, + resourcePathForSourceSet = { sourceSet -> + KotlinTargetResourcesPublication.ResourceRoot( + resourcesBaseDirectory = sourceSetPathProvider(sourceSet), + includes = emptyList(), + excludes = emptyList(), + ) + }, + relativeResourcePlacement = relativeResourcePlacement, + ) + } + + sourceSets.commonMain { + dependencies { + + } + } +} + +android { + namespace = "test.${project.name}" + compileSdk = 34 + defaultConfig { + minSdk = 24 + } +} diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/androidMain/multiplatformResources/onlyInAndroidMain b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/androidMain/multiplatformResources/onlyInAndroidMain new file mode 100644 index 00000000000..6d8df5117df --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/androidMain/multiplatformResources/onlyInAndroidMain @@ -0,0 +1 @@ +onlyInAndroidMain \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/commonMain/kotlin/stub.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/commonMain/kotlin/stub.kt new file mode 100644 index 00000000000..e69de29bb2d diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/commonMain/multiplatformResources/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/commonMain/multiplatformResources/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/commonMain/multiplatformResources/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/iosArm64Main/multiplatformResources/onlyInIOSArm64 b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/iosArm64Main/multiplatformResources/onlyInIOSArm64 new file mode 100644 index 00000000000..b78068f5d63 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/iosArm64Main/multiplatformResources/onlyInIOSArm64 @@ -0,0 +1 @@ +onlyInIOSArm64 \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/jvmMain/multiplatformResources/onlyInJvm b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/jvmMain/multiplatformResources/onlyInJvm new file mode 100644 index 00000000000..d4cb69decac --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/jvmMain/multiplatformResources/onlyInJvm @@ -0,0 +1 @@ +onlyInJvm \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/linuxX64Main/multiplatformResources/onlyInLinuxX64 b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/linuxX64Main/multiplatformResources/onlyInLinuxX64 new file mode 100644 index 00000000000..881c2658365 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/linuxX64Main/multiplatformResources/onlyInLinuxX64 @@ -0,0 +1 @@ +onlyInLinuxX64 \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/wasmJsMain/multiplatformResources/onlyInWasmJs b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/wasmJsMain/multiplatformResources/onlyInWasmJs new file mode 100644 index 00000000000..182f627d6d2 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/wasmJsMain/multiplatformResources/onlyInWasmJs @@ -0,0 +1 @@ +onlyInWasmJs \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/wasmWasiMain/multiplatformResources/onlyInWasmWasi b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/wasmWasiMain/multiplatformResources/onlyInWasmWasi new file mode 100644 index 00000000000..0f1bbae1eb4 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/dependency/src/wasmWasiMain/multiplatformResources/onlyInWasmWasi @@ -0,0 +1 @@ +onlyInWasmWasi \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResources/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResources/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResources/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResources/onlyInIOSArm64 b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResources/onlyInIOSArm64 new file mode 100644 index 00000000000..b78068f5d63 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResources/onlyInIOSArm64 @@ -0,0 +1 @@ +onlyInIOSArm64 \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResourcesTransitive/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResourcesTransitive/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResourcesTransitive/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResourcesTransitive/onlyInIOSArm64 b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResourcesTransitive/onlyInIOSArm64 new file mode 100644 index 00000000000..b78068f5d63 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/projectWithResourcesTransitive/onlyInIOSArm64 @@ -0,0 +1 @@ +onlyInIOSArm64 \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResources/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResources/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResources/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResources/onlyInIOSArm64 b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResources/onlyInIOSArm64 new file mode 100644 index 00000000000..b78068f5d63 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResources/onlyInIOSArm64 @@ -0,0 +1 @@ +onlyInIOSArm64 \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResourcesTransitive/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResourcesTransitive/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResourcesTransitive/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResourcesTransitive/onlyInIOSArm64 b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResourcesTransitive/onlyInIOSArm64 new file mode 100644 index 00000000000..b78068f5d63 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/iosArm64/embed/publishedWithResourcesTransitive/onlyInIOSArm64 @@ -0,0 +1 @@ +onlyInIOSArm64 \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResources/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResources/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResources/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResources/onlyInLinuxX64 b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResources/onlyInLinuxX64 new file mode 100644 index 00000000000..881c2658365 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResources/onlyInLinuxX64 @@ -0,0 +1 @@ +onlyInLinuxX64 \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResourcesTransitive/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResourcesTransitive/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResourcesTransitive/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResourcesTransitive/onlyInLinuxX64 b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResourcesTransitive/onlyInLinuxX64 new file mode 100644 index 00000000000..881c2658365 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/projectWithResourcesTransitive/onlyInLinuxX64 @@ -0,0 +1 @@ +onlyInLinuxX64 \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResources/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResources/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResources/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResources/onlyInLinuxX64 b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResources/onlyInLinuxX64 new file mode 100644 index 00000000000..881c2658365 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResources/onlyInLinuxX64 @@ -0,0 +1 @@ +onlyInLinuxX64 \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResourcesTransitive/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResourcesTransitive/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResourcesTransitive/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResourcesTransitive/onlyInLinuxX64 b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResourcesTransitive/onlyInLinuxX64 new file mode 100644 index 00000000000..881c2658365 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/linuxX64/embed/publishedWithResourcesTransitive/onlyInLinuxX64 @@ -0,0 +1 @@ +onlyInLinuxX64 \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResources/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResources/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResources/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResources/onlyInWasmJs b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResources/onlyInWasmJs new file mode 100644 index 00000000000..182f627d6d2 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResources/onlyInWasmJs @@ -0,0 +1 @@ +onlyInWasmJs \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResourcesTransitive/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResourcesTransitive/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResourcesTransitive/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResourcesTransitive/onlyInWasmJs b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResourcesTransitive/onlyInWasmJs new file mode 100644 index 00000000000..182f627d6d2 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/projectWithResourcesTransitive/onlyInWasmJs @@ -0,0 +1 @@ +onlyInWasmJs \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResources/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResources/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResources/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResources/onlyInWasmJs b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResources/onlyInWasmJs new file mode 100644 index 00000000000..182f627d6d2 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResources/onlyInWasmJs @@ -0,0 +1 @@ +onlyInWasmJs \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResourcesTransitive/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResourcesTransitive/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResourcesTransitive/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResourcesTransitive/onlyInWasmJs b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResourcesTransitive/onlyInWasmJs new file mode 100644 index 00000000000..182f627d6d2 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmJs/embed/publishedWithResourcesTransitive/onlyInWasmJs @@ -0,0 +1 @@ +onlyInWasmJs \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResources/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResources/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResources/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResources/onlyInWasmWasi b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResources/onlyInWasmWasi new file mode 100644 index 00000000000..0f1bbae1eb4 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResources/onlyInWasmWasi @@ -0,0 +1 @@ +onlyInWasmWasi \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResourcesTransitive/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResourcesTransitive/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResourcesTransitive/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResourcesTransitive/onlyInWasmWasi b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResourcesTransitive/onlyInWasmWasi new file mode 100644 index 00000000000..0f1bbae1eb4 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/projectWithResourcesTransitive/onlyInWasmWasi @@ -0,0 +1 @@ +onlyInWasmWasi \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResources/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResources/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResources/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResources/onlyInWasmWasi b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResources/onlyInWasmWasi new file mode 100644 index 00000000000..0f1bbae1eb4 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResources/onlyInWasmWasi @@ -0,0 +1 @@ +onlyInWasmWasi \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResourcesTransitive/inCommon b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResourcesTransitive/inCommon new file mode 100644 index 00000000000..7cbcb793c05 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResourcesTransitive/inCommon @@ -0,0 +1 @@ +inCommon \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResourcesTransitive/onlyInWasmWasi b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResourcesTransitive/onlyInWasmWasi new file mode 100644 index 00000000000..0f1bbae1eb4 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/multiplatformResources/consumption/reference/wasmWasi/embed/publishedWithResourcesTransitive/onlyInWasmWasi @@ -0,0 +1 @@ +onlyInWasmWasi \ No newline at end of file