[Gradle][MPP] Implement additional InternalKotlinSourceSetTests
.. for withDependsOnClosure and compilations ^KT-52726 Verification Pending
This commit is contained in:
committed by
Space
parent
a0d350fad4
commit
74b2285877
+85
@@ -7,11 +7,16 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.gradle.sources
|
package org.jetbrains.kotlin.gradle.sources
|
||||||
|
|
||||||
|
import org.jetbrains.kotlin.gradle.buildProjectWithMPP
|
||||||
|
import org.jetbrains.kotlin.gradle.dsl.multiplatformExtension
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
||||||
import org.jetbrains.kotlin.gradle.plugin.sources.InternalKotlinSourceSet
|
import org.jetbrains.kotlin.gradle.plugin.sources.InternalKotlinSourceSet
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.sources.internal
|
||||||
import org.jetbrains.kotlin.gradle.reflections
|
import org.jetbrains.kotlin.gradle.reflections
|
||||||
import kotlin.reflect.full.isSubclassOf
|
import kotlin.reflect.full.isSubclassOf
|
||||||
import kotlin.test.Test
|
import kotlin.test.Test
|
||||||
|
import kotlin.test.assertEquals
|
||||||
import kotlin.test.fail
|
import kotlin.test.fail
|
||||||
|
|
||||||
class InternalKotlinSourceSetTest {
|
class InternalKotlinSourceSetTest {
|
||||||
@@ -26,4 +31,84 @@ class InternalKotlinSourceSetTest {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `test - compilations - sample - 0`() {
|
||||||
|
val project = buildProjectWithMPP()
|
||||||
|
val kotlin = project.multiplatformExtension
|
||||||
|
|
||||||
|
val jvm = kotlin.jvm()
|
||||||
|
val linux = kotlin.linuxX64()
|
||||||
|
val macos = kotlin.macosX64()
|
||||||
|
|
||||||
|
val metadataCompilation = kotlin.metadata().compilations.getByName("main")
|
||||||
|
val jvmCompilation = jvm.compilations.getByName("main")
|
||||||
|
val linuxCompilation = linux.compilations.getByName("main")
|
||||||
|
val macosCompilation = macos.compilations.getByName("main")
|
||||||
|
|
||||||
|
val commonMain = kotlin.sourceSets.getByName("commonMain")
|
||||||
|
val linuxX4Main = kotlin.sourceSets.getByName("linuxX64Main")
|
||||||
|
val macosX64Main = kotlin.sourceSets.getByName("macosX64Main")
|
||||||
|
|
||||||
|
val nativeMain = kotlin.sourceSets.create("nativeMain")
|
||||||
|
nativeMain.dependsOn(commonMain)
|
||||||
|
|
||||||
|
assertEquals<Set<KotlinCompilation<*>>>(
|
||||||
|
setOf(metadataCompilation, jvmCompilation, linuxCompilation, macosCompilation),
|
||||||
|
commonMain.internal.compilations
|
||||||
|
)
|
||||||
|
|
||||||
|
assertEquals(
|
||||||
|
emptySet(),
|
||||||
|
nativeMain.internal.compilations
|
||||||
|
)
|
||||||
|
|
||||||
|
linuxX4Main.dependsOn(nativeMain)
|
||||||
|
assertEquals<Set<KotlinCompilation<*>>>(
|
||||||
|
setOf(linuxCompilation),
|
||||||
|
nativeMain.internal.compilations
|
||||||
|
)
|
||||||
|
|
||||||
|
macosX64Main.dependsOn(nativeMain)
|
||||||
|
assertEquals<Set<KotlinCompilation<*>>>(
|
||||||
|
setOf(linuxCompilation, macosCompilation),
|
||||||
|
nativeMain.internal.compilations
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `test - withDependsOnClosure - sample - 0`() {
|
||||||
|
val project = buildProjectWithMPP()
|
||||||
|
val kotlin = project.multiplatformExtension
|
||||||
|
|
||||||
|
kotlin.linuxX64()
|
||||||
|
|
||||||
|
val commonMain = kotlin.sourceSets.getByName("commonMain")
|
||||||
|
val nativeMain = kotlin.sourceSets.create("nativeMain")
|
||||||
|
val linuxMain = kotlin.sourceSets.create("linuxMain")
|
||||||
|
val linuxX64Main = kotlin.sourceSets.getByName("linuxX64Main")
|
||||||
|
|
||||||
|
assertEquals(
|
||||||
|
setOf(commonMain, linuxX64Main),
|
||||||
|
linuxX64Main.internal.withDependsOnClosure
|
||||||
|
)
|
||||||
|
|
||||||
|
linuxX64Main.dependsOn(linuxMain)
|
||||||
|
assertEquals(
|
||||||
|
setOf(commonMain, linuxMain, linuxX64Main),
|
||||||
|
linuxX64Main.internal.withDependsOnClosure
|
||||||
|
)
|
||||||
|
|
||||||
|
linuxMain.dependsOn(nativeMain)
|
||||||
|
assertEquals(
|
||||||
|
setOf(commonMain, nativeMain, linuxMain, linuxX64Main),
|
||||||
|
linuxX64Main.internal.withDependsOnClosure
|
||||||
|
)
|
||||||
|
|
||||||
|
nativeMain.dependsOn(commonMain)
|
||||||
|
assertEquals(
|
||||||
|
setOf(commonMain, nativeMain, linuxMain, linuxX64Main),
|
||||||
|
linuxX64Main.internal.withDependsOnClosure
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user