Merge boxWithStdlib testData into box, delete BoxWithStdlib test

This commit is contained in:
Alexander Udalov
2016-03-07 13:36:14 +03:00
committed by Alexander Udalov
parent 22bfc9786a
commit 06a67e6602
535 changed files with 3520 additions and 3871 deletions
@@ -0,0 +1,21 @@
// WITH_REFLECT
import kotlin.reflect.*
import kotlin.test.assertTrue
interface Interface
annotation class Anno(val x: Int)
object Obj
class C {
companion object
}
fun box(): String {
assertTrue(Interface::class.constructors.isEmpty())
assertTrue(Anno::class.constructors.isEmpty())
assertTrue(Obj::class.constructors.isEmpty())
assertTrue(C.Companion::class.constructors.isEmpty())
return "OK"
}
@@ -0,0 +1,10 @@
// WITH_REFLECT
import kotlin.test.assertEquals
class A
fun box(): String {
assertEquals("<init>", ::A.name)
return "OK"
}
@@ -0,0 +1,54 @@
// WITH_REFLECT
import kotlin.test.assertNull
import kotlin.test.assertNotNull
import kotlin.reflect.*
class OnlyPrimary
class PrimaryWithSecondary(val s: String) {
constructor(x: Int) : this(x.toString())
override fun toString() = s
}
class OnlySecondary {
constructor(s: String)
}
class TwoSecondaries {
constructor(s: String)
constructor(d: Double)
}
enum class En
interface I
object O
class C {
companion object
}
fun box(): String {
val p1 = OnlyPrimary::class.primaryConstructor
assertNotNull(p1)
assert(p1!!.call() is OnlyPrimary)
val p2 = PrimaryWithSecondary::class.primaryConstructor
assertNotNull(p2)
assert(p2!!.call("beer").toString() == "beer")
val p3 = OnlySecondary::class.primaryConstructor
assertNull(p3)
val p4 = TwoSecondaries::class.primaryConstructor
assertNull(p4)
assertNotNull(En::class.primaryConstructor) // TODO: maybe primaryConstructor should be null for enum classes
assertNull(I::class.primaryConstructor)
assertNull(O::class.primaryConstructor)
assertNull(C.Companion::class.primaryConstructor)
return "OK"
}
@@ -0,0 +1,31 @@
// WITH_REFLECT
import java.util.Collections
import kotlin.reflect.*
import kotlin.test.assertEquals
import kotlin.test.assertTrue
open class A private constructor(x: Int) {
public constructor(s: String): this(s.length)
constructor(): this("")
}
class B : A("")
class C {
class Nested
inner class Inner
}
fun box(): String {
assertEquals(3, A::class.constructors.size)
assertEquals(1, B::class.constructors.size)
assertTrue(Collections.disjoint(A::class.members, A::class.constructors))
assertTrue(Collections.disjoint(B::class.members, B::class.constructors))
assertEquals(1, C.Nested::class.constructors.size)
assertEquals(1, C.Inner::class.constructors.size)
return "OK"
}