384 lines
7.7 KiB
Kotlin
Vendored
384 lines
7.7 KiB
Kotlin
Vendored
// EXPECTED_REACHABLE_NODES: 1829
|
|
// KJS_WITH_FULL_RUNTIME
|
|
// SKIP_DCE_DRIVEN
|
|
// RUN_UNIT_TESTS
|
|
// ES_MODULES
|
|
|
|
// FILE: a.kt
|
|
package a
|
|
|
|
import common.*
|
|
import kotlin.test.*
|
|
|
|
class A {
|
|
@BeforeTest
|
|
fun before() {
|
|
call("a.A.before")
|
|
}
|
|
|
|
@AfterTest
|
|
fun after() {
|
|
call("a.A.after")
|
|
}
|
|
|
|
@Test
|
|
fun passing() {
|
|
call("a.A.passing")
|
|
}
|
|
|
|
@Test
|
|
fun failing() {
|
|
call("a.A.failing")
|
|
raise("a.A.failing.exception")
|
|
call("never happens")
|
|
}
|
|
|
|
@Ignore
|
|
@Test
|
|
fun ignored() {
|
|
call("a.A.ignored")
|
|
}
|
|
|
|
@Test
|
|
fun withException() {
|
|
call("withException")
|
|
raise("some exception")
|
|
call("never happens")
|
|
}
|
|
|
|
inner class Inner {
|
|
@Test
|
|
fun innerTest() {
|
|
call("a.A.Inner.innerTest")
|
|
}
|
|
}
|
|
|
|
class Nested {
|
|
@Test
|
|
fun nestedTest() {
|
|
call("a.A.Nested.nestedTest")
|
|
}
|
|
}
|
|
|
|
companion object {
|
|
@Test
|
|
fun companionTest() {
|
|
call("a.A.companionTest")
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
object O {
|
|
@Test
|
|
fun test() {
|
|
call("a.O.test")
|
|
}
|
|
}
|
|
|
|
// FILE: a_a.kt
|
|
package a.a
|
|
|
|
import common.*
|
|
import kotlin.test.*
|
|
|
|
class A {
|
|
@BeforeTest
|
|
fun before() {
|
|
call("a.a.A.before")
|
|
}
|
|
|
|
@AfterTest
|
|
fun after() {
|
|
call("a.a.A.after")
|
|
}
|
|
|
|
@Test
|
|
fun passing() {
|
|
call("a.a.A.passing")
|
|
}
|
|
|
|
@Test
|
|
fun failing() {
|
|
call("a.a.A.failing")
|
|
raise("a.a.A.failing.exception")
|
|
call("never happens")
|
|
}
|
|
|
|
@Ignore
|
|
@Test
|
|
fun ignored() {
|
|
call("a.a.A.ignored")
|
|
}
|
|
|
|
@Test
|
|
fun withException() {
|
|
call("withException")
|
|
raise("some exception")
|
|
call("never happens")
|
|
}
|
|
|
|
inner class Inner {
|
|
@Test
|
|
fun innerTest() {
|
|
call("a.a.A.Inner.innerTest")
|
|
}
|
|
}
|
|
|
|
class Nested {
|
|
@Test
|
|
fun nestedTest() {
|
|
call("a.a.A.Nested.nestedTest")
|
|
}
|
|
}
|
|
|
|
companion object {
|
|
@Test
|
|
fun companionTest() {
|
|
call("a.a.A.companionTest")
|
|
}
|
|
}
|
|
}
|
|
|
|
object O {
|
|
@Test
|
|
fun test() {
|
|
call("a.a.O.test")
|
|
}
|
|
}
|
|
|
|
// FILE: a_a2.kt
|
|
// RECOMPILE
|
|
package a.a
|
|
|
|
import common.*
|
|
import kotlin.test.*
|
|
|
|
class B {
|
|
@BeforeTest
|
|
fun before() {
|
|
call("a.a.B.before")
|
|
}
|
|
|
|
@AfterTest
|
|
fun after() {
|
|
call("a.a.B.after")
|
|
}
|
|
|
|
@Test
|
|
fun passing() {
|
|
call("a.a.B.passing")
|
|
}
|
|
|
|
@Test
|
|
fun failing() {
|
|
call("a.a.B.failing")
|
|
raise("a.a.B.failing.exception")
|
|
call("never happens")
|
|
}
|
|
|
|
@Ignore
|
|
@Test
|
|
fun ignored() {
|
|
call("a.a.B.ignored")
|
|
}
|
|
|
|
@Test
|
|
fun withException() {
|
|
call("withException")
|
|
raise("some exception")
|
|
call("never happens")
|
|
}
|
|
|
|
inner class Inner {
|
|
@Test
|
|
fun innerTest() {
|
|
call("a.a.B.Inner.innerTest")
|
|
}
|
|
}
|
|
|
|
class Nested {
|
|
@Test
|
|
fun nestedTest() {
|
|
call("a.a.B.Nested.nestedTest")
|
|
}
|
|
}
|
|
|
|
companion object {
|
|
@Test
|
|
fun companionTest() {
|
|
call("a.a.B.companionTest")
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
object O2 {
|
|
@Test
|
|
fun test() {
|
|
call("a.a.O2.test")
|
|
}
|
|
}
|
|
|
|
// FILE: main.kt
|
|
|
|
import common.*
|
|
import kotlin.test.Test
|
|
|
|
class Simple {
|
|
@Test fun foo() {
|
|
call("foo")
|
|
}
|
|
}
|
|
|
|
fun box() = checkLog(false) {
|
|
suite("a") {
|
|
suite("A") {
|
|
test("passing") {
|
|
call("a.A.before")
|
|
call("a.A.passing")
|
|
call("a.A.after")
|
|
}
|
|
test("failing") {
|
|
call("a.A.before")
|
|
call("a.A.failing")
|
|
raised("a.A.failing.exception")
|
|
call("a.A.after")
|
|
caught("a.A.failing.exception")
|
|
}
|
|
test("ignored", true) {
|
|
call("a.A.before")
|
|
call("a.A.ignored")
|
|
call("a.A.after")
|
|
}
|
|
test("withException") {
|
|
call("a.A.before")
|
|
call("withException")
|
|
raised("some exception")
|
|
call("a.A.after")
|
|
caught("some exception")
|
|
}
|
|
suite("Inner") {
|
|
test("innerTest") {
|
|
call("a.A.Inner.innerTest")
|
|
}
|
|
}
|
|
suite("Nested") {
|
|
test("nestedTest") {
|
|
call("a.A.Nested.nestedTest")
|
|
}
|
|
}
|
|
suite("Companion") {
|
|
test("companionTest") {
|
|
call("a.A.companionTest")
|
|
}
|
|
}
|
|
}
|
|
suite("O") {
|
|
test("test") {
|
|
call("a.O.test")
|
|
}
|
|
}
|
|
}
|
|
suite("a.a") {
|
|
suite("A") {
|
|
test("passing") {
|
|
call("a.a.A.before")
|
|
call("a.a.A.passing")
|
|
call("a.a.A.after")
|
|
}
|
|
test("failing") {
|
|
call("a.a.A.before")
|
|
call("a.a.A.failing")
|
|
raised("a.a.A.failing.exception")
|
|
call("a.a.A.after")
|
|
caught("a.a.A.failing.exception")
|
|
}
|
|
test("ignored", true) {
|
|
call("a.a.A.before")
|
|
call("a.a.A.ignored")
|
|
call("a.a.A.after")
|
|
}
|
|
test("withException") {
|
|
call("a.a.A.before")
|
|
call("withException")
|
|
raised("some exception")
|
|
call("a.a.A.after")
|
|
caught("some exception")
|
|
}
|
|
suite("Inner") {
|
|
test("innerTest") {
|
|
call("a.a.A.Inner.innerTest")
|
|
}
|
|
}
|
|
suite("Nested") {
|
|
test("nestedTest") {
|
|
call("a.a.A.Nested.nestedTest")
|
|
}
|
|
}
|
|
suite("Companion") {
|
|
test("companionTest") {
|
|
call("a.a.A.companionTest")
|
|
}
|
|
}
|
|
}
|
|
suite("O") {
|
|
test("test") {
|
|
call("a.a.O.test")
|
|
}
|
|
}
|
|
suite("B") {
|
|
test("passing") {
|
|
call("a.a.B.before")
|
|
call("a.a.B.passing")
|
|
call("a.a.B.after")
|
|
}
|
|
test("failing") {
|
|
call("a.a.B.before")
|
|
call("a.a.B.failing")
|
|
raised("a.a.B.failing.exception")
|
|
call("a.a.B.after")
|
|
caught("a.a.B.failing.exception")
|
|
}
|
|
test("ignored", true) {
|
|
call("a.a.B.before")
|
|
call("a.a.B.ignored")
|
|
call("a.a.B.after")
|
|
}
|
|
test("withException") {
|
|
call("a.a.B.before")
|
|
call("withException")
|
|
raised("some exception")
|
|
call("a.a.B.after")
|
|
caught("some exception")
|
|
}
|
|
suite("Inner") {
|
|
test("innerTest") {
|
|
call("a.a.B.Inner.innerTest")
|
|
}
|
|
}
|
|
suite("Nested") {
|
|
test("nestedTest") {
|
|
call("a.a.B.Nested.nestedTest")
|
|
}
|
|
}
|
|
suite("Companion") {
|
|
test("companionTest") {
|
|
call("a.a.B.companionTest")
|
|
}
|
|
}
|
|
}
|
|
suite("O2") {
|
|
test("test") {
|
|
call("a.a.O2.test")
|
|
}
|
|
}
|
|
}
|
|
suite("") {
|
|
suite("Simple") {
|
|
test("foo") {
|
|
call("foo")
|
|
}
|
|
}
|
|
}
|
|
} |