[K/N][Tests] Move codegen test sources interfaceCallsNCasts..vector

^KT-61259
This commit is contained in:
Vladimir Sukharev
2023-12-15 00:13:04 +01:00
committed by Space Team
parent 56e1c5cbc6
commit 93642020ff
182 changed files with 2023 additions and 686 deletions
@@ -0,0 +1,20 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
package codegen.lateinit.globalIsInitialized
import kotlin.test.*
lateinit var s: String
fun foo() {
println(::s.isInitialized)
}
@Test fun runTest() {
foo()
s = "zzz"
foo()
}
@@ -0,0 +1,2 @@
false
true
@@ -0,0 +1,24 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
package codegen.lateinit.inBaseClass
import kotlin.test.*
class A(val a: Int)
open class B {
lateinit var a: A
}
class C: B() {
fun foo() { a = A(42) }
}
@Test fun runTest() {
val c = C()
c.foo()
println(c.a.a)
}
@@ -0,0 +1 @@
42
@@ -0,0 +1,20 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
package codegen.lateinit.initialized
import kotlin.test.*
class A {
lateinit var s: String
fun foo() = s
}
@Test fun runTest() {
val a = A()
a.s = "zzz"
println(a.foo())
}
@@ -0,0 +1 @@
zzz
@@ -0,0 +1,28 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
package codegen.lateinit.innerIsInitialized
import kotlin.test.*
open class Foo {
lateinit var bar: String
fun test(): String {
return InnerSubclass().testInner()
}
inner class InnerSubclass : Foo() {
fun testInner(): String {
// This is access to InnerSubclass.bar which is inherited from Foo.bar
if (this::bar.isInitialized) return "Fail"
return "OK"
}
}
}
@Test fun runTest() {
println(Foo().test())
}
@@ -0,0 +1 @@
OK
@@ -0,0 +1,23 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
package codegen.lateinit.isInitialized
import kotlin.test.*
class A {
lateinit var s: String
fun foo() {
println(::s.isInitialized)
}
}
@Test fun runTest() {
val a = A()
a.foo()
a.s = "zzz"
a.foo()
}
@@ -0,0 +1,2 @@
false
true
@@ -0,0 +1,17 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
package codegen.lateinit.localCapturedInitialized
import kotlin.test.*
@Test fun runTest() {
lateinit var s: String
fun foo() = s
s = "zzz"
println(foo())
}
@@ -0,0 +1 @@
zzz
@@ -0,0 +1,23 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
package codegen.lateinit.localCapturedNotInitialized
import kotlin.test.*
@Test fun runTest() {
lateinit var s: String
fun foo() = s
try {
println(foo())
}
catch (e: RuntimeException) {
println("OK")
return
}
println("Fail")
}
@@ -0,0 +1 @@
OK
@@ -0,0 +1,14 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
package codegen.lateinit.localInitialized
import kotlin.test.*
@Test fun runTest() {
lateinit var s: String
s = "zzz"
println(s)
}
@@ -0,0 +1 @@
zzz
@@ -0,0 +1,21 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
package codegen.lateinit.localNotInitialized
import kotlin.test.*
@Test fun runTest() {
lateinit var s: String
try {
println(s)
}
catch (e: RuntimeException) {
println("OK")
return
}
println("Fail")
}
@@ -0,0 +1 @@
OK
@@ -0,0 +1,26 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
package codegen.lateinit.notInitialized
import kotlin.test.*
class A {
lateinit var s: String
fun foo() = s
}
@Test fun runTest() {
val a = A()
try {
println(a.foo())
}
catch (e: RuntimeException) {
println("OK")
return
}
println("Fail")
}
@@ -0,0 +1 @@
OK