Add test for code using internal compiled incrementally
The issue was fixed during refactoring
#KT-12923 fixed
This commit is contained in:
+21
@@ -2,6 +2,7 @@ package org.jetbrains.kotlin.gradle
|
||||
|
||||
import org.jetbrains.kotlin.gradle.util.allJavaFiles
|
||||
import org.jetbrains.kotlin.gradle.util.getFileByName
|
||||
import org.jetbrains.kotlin.gradle.util.modify
|
||||
import org.junit.Test
|
||||
|
||||
class KaptIT: BaseGradleIT() {
|
||||
@@ -180,4 +181,24 @@ class KaptIT: BaseGradleIT() {
|
||||
assertFileExists("build/classes/main/example/TestClassCustomized.class")
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testInternalUserIsModifiedStubsIC() {
|
||||
val options = defaultBuildOptions().copy(incremental = true)
|
||||
val project = Project("kaptStubs", GRADLE_VERSION)
|
||||
|
||||
project.build("build", options = options) {
|
||||
assertSuccessful()
|
||||
}
|
||||
|
||||
val internalDummyUserKt = project.projectDir.getFileByName("InternalDummyUser.kt")
|
||||
internalDummyUserKt.modify { it + " " }
|
||||
val internalDummyTestKt = project.projectDir.getFileByName("InternalDummyTest.kt")
|
||||
internalDummyTestKt.modify { it + " " }
|
||||
|
||||
project.build("build", options = options) {
|
||||
assertSuccessful()
|
||||
assertCompiledKotlinSources(project.relativize(internalDummyUserKt, internalDummyTestKt))
|
||||
}
|
||||
}
|
||||
}
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
package foo
|
||||
|
||||
internal class InternalDummy {
|
||||
internal val x = "InternalDummy.x"
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
package foo
|
||||
|
||||
internal class InternalDummyUser {
|
||||
internal fun use(dummy: InternalDummy) {
|
||||
if (dummy.x != "InternalDummy.x") throw AssertionError("dummy.x = ${dummy.x}")
|
||||
}
|
||||
}
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
package foo
|
||||
|
||||
import org.junit.Test
|
||||
|
||||
class InternalDummyTest {
|
||||
@Test
|
||||
fun testDummy() {
|
||||
val dummy = InternalDummy()
|
||||
val dummyUser = InternalDummyUser()
|
||||
dummyUser.use(dummy)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user