Add test on Experimental in scripts

This commit is contained in:
Alexander Udalov
2018-02-07 14:08:52 +01:00
parent 21e2a3c0b4
commit 65a6171782
4 changed files with 123 additions and 0 deletions
@@ -0,0 +1,50 @@
// !API_VERSION: 1.3
// !DIAGNOSTICS: -UNUSED_VARIABLE
// MODULE: api
// FILE: api.kt
package api
@Experimental(Experimental.Level.WARNING, [Experimental.Impact.COMPILATION])
annotation class ExperimentalAPI
@ExperimentalAPI
fun function(): String = ""
// MODULE: usage1(api)
// FILE: usage-propagate.kts
import api.*
@ExperimentalAPI
fun use() {
function()
}
<!EXPERIMENTAL_API_USAGE!>function<!>()
<!EXPERIMENTAL_API_USAGE!>use<!>()
// MODULE: usage2(api)
// FILE: usage-use.kts
@file:UseExperimental(ExperimentalAPI::class)
import api.*
fun use() {
function()
}
<!EXPERIMENTAL_API_USAGE!>function<!>()
use()
// MODULE: usage3(api)
// FILE: usage-none.kts
import api.*
fun use() {
<!EXPERIMENTAL_API_USAGE!>function<!>()
}
<!EXPERIMENTAL_API_USAGE!>function<!>()
use()