Convert KaptModelIT to new test dsl
^KT-45745 In Progress
This commit is contained in:
+55
-27
@@ -5,42 +5,70 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.gradle.model
|
package org.jetbrains.kotlin.gradle.model
|
||||||
|
|
||||||
import org.jetbrains.kotlin.gradle.BaseGradleIT
|
import org.gradle.util.GradleVersion
|
||||||
import org.junit.Test
|
import org.jetbrains.kotlin.gradle.testbase.*
|
||||||
|
import org.junit.jupiter.api.DisplayName
|
||||||
import kotlin.test.assertEquals
|
import kotlin.test.assertEquals
|
||||||
import kotlin.test.assertNull
|
import kotlin.test.assertNull
|
||||||
|
|
||||||
class KaptModelIT : BaseGradleIT() {
|
@DisplayName("Kapt plugin models")
|
||||||
@Test
|
@OtherGradlePluginTests
|
||||||
fun testKaptSimple() {
|
class KaptModelIT : KGPBaseTest() {
|
||||||
val project = Project("simple", directoryPrefix = "kapt2")
|
|
||||||
val kaptModel = project.getModels(Kapt::class.java).getModel(":")!!
|
|
||||||
|
|
||||||
kaptModel.assertBasics("simple")
|
@DisplayName("Valid kapt model is available when plugin is applied")
|
||||||
|
@GradleTest
|
||||||
|
fun testKaptSimple(gradleVersion: GradleVersion) {
|
||||||
|
project("kapt2/simple", gradleVersion) {
|
||||||
|
getModels<Kapt> {
|
||||||
|
with(getModel(":")!!) {
|
||||||
|
assertBasics("simple")
|
||||||
|
|
||||||
assertEquals(2, kaptModel.kaptSourceSets.size)
|
assertEquals(2, kaptSourceSets.size)
|
||||||
val mainSourceSet = kaptModel.kaptSourceSets.find { it.name == "main" }!!
|
val mainSourceSet = kaptSourceSets.first { it.name == "main" }
|
||||||
val testSourceSet = kaptModel.kaptSourceSets.find { it.name == "test" }!!
|
val testSourceSet = kaptSourceSets.first { it.name == "test" }
|
||||||
|
|
||||||
assertEquals(KaptSourceSet.KaptSourceSetType.PRODUCTION, mainSourceSet.type)
|
assertEquals(KaptSourceSet.KaptSourceSetType.PRODUCTION, mainSourceSet.type)
|
||||||
assertEquals(project.projectDir.resolve("build/generated/source/kapt/main"), mainSourceSet.generatedSourcesDirectory)
|
assertEquals(
|
||||||
assertEquals(project.projectDir.resolve("build/generated/source/kaptKotlin/main"), mainSourceSet.generatedKotlinSourcesDirectory)
|
projectPath.resolve("build/generated/source/kapt/main").toFile(),
|
||||||
assertEquals(project.projectDir.resolve("build/tmp/kapt3/classes/main"), mainSourceSet.generatedClassesDirectory)
|
mainSourceSet.generatedSourcesDirectory
|
||||||
|
)
|
||||||
|
assertEquals(
|
||||||
|
projectPath.resolve("build/generated/source/kaptKotlin/main").toFile(),
|
||||||
|
mainSourceSet.generatedKotlinSourcesDirectory
|
||||||
|
)
|
||||||
|
assertEquals(
|
||||||
|
projectPath.resolve("build/tmp/kapt3/classes/main").toFile(),
|
||||||
|
mainSourceSet.generatedClassesDirectory
|
||||||
|
)
|
||||||
|
|
||||||
assertEquals(KaptSourceSet.KaptSourceSetType.TEST, testSourceSet.type)
|
assertEquals(KaptSourceSet.KaptSourceSetType.TEST, testSourceSet.type)
|
||||||
assertEquals(project.projectDir.resolve("build/generated/source/kapt/test"), testSourceSet.generatedSourcesDirectory)
|
assertEquals(
|
||||||
assertEquals(project.projectDir.resolve("build/generated/source/kaptKotlin/test"), testSourceSet.generatedKotlinSourcesDirectory)
|
projectPath.resolve("build/generated/source/kapt/test").toFile(),
|
||||||
assertEquals(project.projectDir.resolve("build/tmp/kapt3/classes/test"), testSourceSet.generatedClassesDirectory)
|
testSourceSet.generatedSourcesDirectory
|
||||||
|
)
|
||||||
|
assertEquals(
|
||||||
|
projectPath.resolve("build/generated/source/kaptKotlin/test").toFile(),
|
||||||
|
testSourceSet.generatedKotlinSourcesDirectory
|
||||||
|
)
|
||||||
|
assertEquals(
|
||||||
|
projectPath.resolve("build/tmp/kapt3/classes/test").toFile(),
|
||||||
|
testSourceSet.generatedClassesDirectory
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@DisplayName("Model is not available when plugin is not applied")
|
||||||
fun testNonJvmProjects() {
|
@GradleTest
|
||||||
val project = Project("kotlin2JsProject")
|
fun testNonJvmProjects(gradleVersion: GradleVersion) {
|
||||||
val models = project.getModels(Kapt::class.java)
|
project("kotlin2JsProject", gradleVersion) {
|
||||||
|
getModels<Kapt> {
|
||||||
assertNull(models.getModel(":"))
|
assertNull(getModel(":"))
|
||||||
assertNull(models.getModel(":libraryProject"))
|
assertNull(getModel(":libraryProject"))
|
||||||
assertNull(models.getModel(":mainProject"))
|
assertNull(getModel(":mainProject"))
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
|
|||||||
Reference in New Issue
Block a user