[K/N][Tests] Move codegen test sources interfaceCallsNCasts..vector
^KT-61259
This commit is contained in:
committed by
Space Team
parent
56e1c5cbc6
commit
93642020ff
@@ -0,0 +1,15 @@
|
||||
/*
|
||||
* 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.`object`.constructor0
|
||||
|
||||
import kotlin.test.*
|
||||
|
||||
class A {
|
||||
var field0:Int = 0;
|
||||
constructor(arg0:Int) {
|
||||
field0 = arg0
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
/*
|
||||
* 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.`object`.fields
|
||||
|
||||
import kotlin.test.*
|
||||
|
||||
private var globalValue = 1
|
||||
var global:Int
|
||||
get() = globalValue
|
||||
set(value:Int) {globalValue = value}
|
||||
|
||||
fun globalTest(i:Int):Int {
|
||||
global += i
|
||||
return global
|
||||
}
|
||||
|
||||
|
||||
@Test fun runTest() {
|
||||
if (global != 1) throw Error()
|
||||
if (globalTest(41) != 42) throw Error()
|
||||
if (global != 42) throw Error()
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* 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.`object`.fields1
|
||||
|
||||
import kotlin.test.*
|
||||
|
||||
class B(val a:Int, b:Int) {
|
||||
constructor(pos:Int):this(1, pos) {}
|
||||
val pos = b + 1
|
||||
}
|
||||
|
||||
fun primaryConstructorCall(a:Int, b:Int) = B(a, b).pos
|
||||
|
||||
fun secondaryConstructorCall(a:Int) = B(a).pos
|
||||
|
||||
@Test fun runTest() {
|
||||
if (primaryConstructorCall(0xdeadbeef.toInt(), 41) != 42) throw Error()
|
||||
if (secondaryConstructorCall(41) != 42) throw Error()
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
/*
|
||||
* 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.`object`.fields2
|
||||
|
||||
import kotlin.test.*
|
||||
|
||||
var global: Int = 0
|
||||
get() {
|
||||
println("Get global = $field")
|
||||
return field
|
||||
}
|
||||
set(value) {
|
||||
println("Set global = $value")
|
||||
field = value
|
||||
}
|
||||
|
||||
class TestClass {
|
||||
var member: Int = 0
|
||||
get() {
|
||||
println("Get member = $field")
|
||||
return field
|
||||
}
|
||||
set(value) {
|
||||
println("Set member = $value")
|
||||
field = value
|
||||
}
|
||||
}
|
||||
|
||||
@Test fun runTest1() {
|
||||
global = 1
|
||||
|
||||
val test = TestClass()
|
||||
test.member = 42
|
||||
|
||||
global = test.member
|
||||
test.member = global
|
||||
}
|
||||
|
||||
@ThreadLocal
|
||||
val xInt = 42
|
||||
|
||||
@ThreadLocal
|
||||
val xString = "42"
|
||||
|
||||
@ThreadLocal
|
||||
val xAny = Any()
|
||||
|
||||
@Test fun runTest2() {
|
||||
assertEquals(42, xInt)
|
||||
assertEquals("42", xString)
|
||||
assertTrue(xAny is Any)
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
Set global = 1
|
||||
Set member = 42
|
||||
Get member = 42
|
||||
Set global = 42
|
||||
Get global = 42
|
||||
Set member = 42
|
||||
@@ -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.
|
||||
*/
|
||||
|
||||
import kotlin.test.*
|
||||
|
||||
@ThreadLocal
|
||||
val xInt = 42
|
||||
|
||||
@ThreadLocal
|
||||
val xString = "42"
|
||||
|
||||
@ThreadLocal
|
||||
val xAny = Any()
|
||||
|
||||
fun box(): String {
|
||||
assertEquals(42, xInt)
|
||||
assertEquals("42", xString)
|
||||
assertTrue(xAny is Any)
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
// Does not fail with TR.
|
||||
|
||||
public val z: Any = Z
|
||||
|
||||
private object Z
|
||||
|
||||
fun main(args: Array<String>) { }
|
||||
@@ -0,0 +1,15 @@
|
||||
/*
|
||||
* 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.`object`.init0
|
||||
|
||||
import kotlin.test.*
|
||||
|
||||
class A(a:Int) {
|
||||
var i:Int = 0
|
||||
init {
|
||||
if (a == 0) i = 1
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
/*
|
||||
* 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.`object`.initialization
|
||||
|
||||
import kotlin.test.*
|
||||
|
||||
open class A(val a:Int, val b:Int)
|
||||
|
||||
open class B(val c:Int, d:Int):A(c, d)
|
||||
|
||||
open class C(i:Int, j:Int):B(i + j, 42)
|
||||
|
||||
class D (i: Int, j:Int) : C(i, j){
|
||||
constructor(i: Int, j:Int, k:Int) : this(i, j) {
|
||||
foo(i)
|
||||
}
|
||||
constructor():this(1, 2)
|
||||
}
|
||||
|
||||
fun foo(i:Int) : Unit {}
|
||||
|
||||
|
||||
fun foo(i:Int, j:Int):Int {
|
||||
val c = D(i, j)
|
||||
return c.c
|
||||
}
|
||||
|
||||
@Test fun runTest() {
|
||||
if (foo(2, 3) != 5) throw Error()
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
* 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.`object`.initialization1
|
||||
|
||||
import kotlin.test.*
|
||||
|
||||
class TestClass {
|
||||
constructor() {
|
||||
println("constructor1")
|
||||
}
|
||||
|
||||
constructor(x: Int) : this() {
|
||||
println("constructor2")
|
||||
}
|
||||
|
||||
init {
|
||||
println("init")
|
||||
}
|
||||
|
||||
val f = println("field")
|
||||
}
|
||||
|
||||
@Test fun runTest() {
|
||||
TestClass()
|
||||
TestClass(1)
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
init
|
||||
field
|
||||
constructor1
|
||||
init
|
||||
field
|
||||
constructor1
|
||||
constructor2
|
||||
@@ -0,0 +1,18 @@
|
||||
/*
|
||||
* 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.`object`.method_call
|
||||
|
||||
import kotlin.test.*
|
||||
|
||||
class A(val a:Int) {
|
||||
fun foo(i:Int) = a + i
|
||||
}
|
||||
|
||||
fun fortyTwo() = A(41).foo(1)
|
||||
|
||||
@Test fun runTest() {
|
||||
if (fortyTwo() != 42) throw Error()
|
||||
}
|
||||
Reference in New Issue
Block a user