From 68ca5715284bbf68b8d0470b6216f7fecf6a6130 Mon Sep 17 00:00:00 2001 From: Sebastian Sellmair Date: Tue, 19 Sep 2023 13:35:46 +0200 Subject: [PATCH] [Gradle] jvm+android: Add additional test for 'java only' ^KT-62033 Verification Pending --- ...deJvmAndAndroidDependencyResolutionTest.kt | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/dependencyResolutionTests/tcs/IdeJvmAndAndroidDependencyResolutionTest.kt b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/dependencyResolutionTests/tcs/IdeJvmAndAndroidDependencyResolutionTest.kt index 9266daa5429..3fffeed7219 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/dependencyResolutionTests/tcs/IdeJvmAndAndroidDependencyResolutionTest.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/dependencyResolutionTests/tcs/IdeJvmAndAndroidDependencyResolutionTest.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.gradle.dependencyResolutionTests.tcs import org.gradle.api.Project +import org.gradle.api.plugins.JavaLibraryPlugin import org.jetbrains.kotlin.gradle.dependencyResolutionTests.mavenCentralCacheRedirector import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformSourceSetConventionsImpl.commonMain import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformSourceSetConventionsImpl.commonTest @@ -149,6 +150,26 @@ class IdeJvmAndAndroidDependencyResolutionTest { ) } + @Test + fun `test - project to jvm (java only) project dependency`() { + val root = buildProject() + + val producer = buildProject({ withParent(root).withName("producer") }) { plugins.apply(JavaLibraryPlugin::class.java) } + val consumer = buildProject({ withParent(root).withName("consumer") }) { configureAndroidAndMultiplatform() } + + consumer.multiplatformExtension.sourceSets.commonMain.dependencies { + implementation(producer) + } + + root.evaluate() + producer.evaluate() + consumer.evaluate() + + consumer.kotlinIdeMultiplatformImport.resolveDependencies("commonMain") + .filter { it !is IdeaKotlinBinaryDependency } + .assertMatches(projectArtifactDependency(IdeaKotlinSourceDependency.Type.Regular, ":producer", FilePathRegex(".*producer.jar"))) + } + @Test fun `test - KT-59020 - transitive project dependency to self`() {