[PL][tests] Keep PL test data under "testData/klib/" dir
This commit is contained in:
committed by
Space Team
parent
9e3afe7a1f
commit
5c3e63e19a
@@ -0,0 +1,45 @@
|
||||
sealed class SC1 {
|
||||
class C1 : SC1()
|
||||
object O1 : SC1()
|
||||
// class Added : SC1()
|
||||
class C2 : SC1()
|
||||
object O2 : SC1()
|
||||
}
|
||||
|
||||
sealed class SC2 {
|
||||
class C1 : SC2()
|
||||
object O1 : SC2()
|
||||
// object Added : SC2()
|
||||
class C2 : SC2()
|
||||
object O2 : SC2()
|
||||
}
|
||||
|
||||
sealed interface SI1 {
|
||||
class C1 : SI1
|
||||
object O1 : SI1
|
||||
interface I1 : SI1
|
||||
// class Added : SI1
|
||||
class C2 : SI1
|
||||
object O2 : SI1
|
||||
interface I2 : SI1
|
||||
}
|
||||
|
||||
sealed interface SI2 {
|
||||
class C1 : SI2
|
||||
object O1 : SI2
|
||||
interface I1 : SI2
|
||||
// object Added : SI2
|
||||
class C2 : SI2
|
||||
object O2 : SI2
|
||||
interface I2 : SI2
|
||||
}
|
||||
|
||||
sealed interface SI3 {
|
||||
class C1 : SI3
|
||||
object O1 : SI3
|
||||
interface I1 : SI3
|
||||
// interface Added : SI3
|
||||
class C2 : SI3
|
||||
object O2 : SI3
|
||||
interface I2 : SI3
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
sealed class SC1 {
|
||||
class C1 : SC1()
|
||||
object O1 : SC1()
|
||||
class Added : SC1()
|
||||
class C2 : SC1()
|
||||
object O2 : SC1()
|
||||
}
|
||||
|
||||
sealed class SC2 {
|
||||
class C1 : SC2()
|
||||
object O1 : SC2()
|
||||
object Added : SC2()
|
||||
class C2 : SC2()
|
||||
object O2 : SC2()
|
||||
}
|
||||
|
||||
sealed interface SI1 {
|
||||
class C1 : SI1
|
||||
object O1 : SI1
|
||||
interface I1 : SI1
|
||||
class Added : SI1
|
||||
class C2 : SI1
|
||||
object O2 : SI1
|
||||
interface I2 : SI1
|
||||
}
|
||||
|
||||
sealed interface SI2 {
|
||||
class C1 : SI2
|
||||
object O1 : SI2
|
||||
interface I1 : SI2
|
||||
object Added : SI2
|
||||
class C2 : SI2
|
||||
object O2 : SI2
|
||||
interface I2 : SI2
|
||||
}
|
||||
|
||||
sealed interface SI3 {
|
||||
class C1 : SI3
|
||||
object O1 : SI3
|
||||
interface I1 : SI3
|
||||
interface Added : SI3
|
||||
class C2 : SI3
|
||||
object O2 : SI3
|
||||
interface I2 : SI3
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
STEP 0:
|
||||
dependencies: stdlib
|
||||
STEP 1:
|
||||
dependencies: stdlib
|
||||
modifications:
|
||||
U : l1.kt.1 -> l1.kt
|
||||
@@ -0,0 +1,40 @@
|
||||
fun compute(sealedClass: SC1): String = when (sealedClass) {
|
||||
is SC1.C1 -> "OK"
|
||||
SC1.O1 -> "OK"
|
||||
is SC1.C2 -> "OK"
|
||||
SC1.O2 -> "OK"
|
||||
}
|
||||
|
||||
fun compute(sealedClass: SC2): String = when (sealedClass) {
|
||||
is SC2.C1 -> "OK"
|
||||
SC2.O1 -> "OK"
|
||||
is SC2.C2 -> "OK"
|
||||
SC2.O2 -> "OK"
|
||||
}
|
||||
|
||||
fun compute(sealedInterface: SI1): String = when (sealedInterface) {
|
||||
is SI1.C1 -> "OK"
|
||||
SI1.O1 -> "OK"
|
||||
is SI1.I1 -> "OK"
|
||||
is SI1.C2 -> "OK"
|
||||
SI1.O2 -> "OK"
|
||||
is SI1.I2 -> "OK"
|
||||
}
|
||||
|
||||
fun compute(sealedInterface: SI2): String = when (sealedInterface) {
|
||||
is SI2.C1 -> "OK"
|
||||
SI2.O1 -> "OK"
|
||||
is SI2.I1 -> "OK"
|
||||
is SI2.C2 -> "OK"
|
||||
SI2.O2 -> "OK"
|
||||
is SI2.I2 -> "OK"
|
||||
}
|
||||
|
||||
fun compute(sealedInterface: SI3): String = when (sealedInterface) {
|
||||
is SI3.C1 -> "OK"
|
||||
SI3.O1 -> "OK"
|
||||
is SI3.I1 -> "OK"
|
||||
is SI3.C2 -> "OK"
|
||||
SI3.O2 -> "OK"
|
||||
is SI3.I2 -> "OK"
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
STEP 0:
|
||||
dependencies: stdlib, lib1
|
||||
@@ -0,0 +1,39 @@
|
||||
import abitestutils.abiTest
|
||||
|
||||
fun box() = abiTest {
|
||||
expectSuccess { compute(SC1.C1()) }
|
||||
expectSuccess { compute(SC1.O1) }
|
||||
expectFailure(noWhenBranch()) { compute(SC1.Added()) }
|
||||
expectSuccess { compute(SC1.C2()) }
|
||||
expectSuccess { compute(SC1.O2) }
|
||||
|
||||
expectSuccess { compute(SC2.C1()) }
|
||||
expectSuccess { compute(SC2.O1) }
|
||||
expectFailure(noWhenBranch()) { compute(SC2.Added) }
|
||||
expectSuccess { compute(SC2.C2()) }
|
||||
expectSuccess { compute(SC2.O2) }
|
||||
|
||||
expectSuccess { compute(SI1.C1()) }
|
||||
expectSuccess { compute(SI1.O1) }
|
||||
expectSuccess { compute(object : SI1.I1 {}) }
|
||||
expectFailure(noWhenBranch()) { compute(SI1.Added()) }
|
||||
expectSuccess { compute(SI1.C2()) }
|
||||
expectSuccess { compute(SI1.O2) }
|
||||
expectSuccess { compute(object : SI1.I2 {}) }
|
||||
|
||||
expectSuccess { compute(SI2.C1()) }
|
||||
expectSuccess { compute(SI2.O1) }
|
||||
expectSuccess { compute(object : SI2.I1 {}) }
|
||||
expectFailure(noWhenBranch()) { compute(SI2.Added) }
|
||||
expectSuccess { compute(SI2.C2()) }
|
||||
expectSuccess { compute(SI2.O2) }
|
||||
expectSuccess { compute(object : SI2.I2 {}) }
|
||||
|
||||
expectSuccess { compute(SI3.C1()) }
|
||||
expectSuccess { compute(SI3.O1) }
|
||||
expectSuccess { compute(object : SI3.I1 {}) }
|
||||
expectFailure(noWhenBranch()) { compute(object : SI3.Added {}) }
|
||||
expectSuccess { compute(SI3.C2()) }
|
||||
expectSuccess { compute(SI3.O2) }
|
||||
expectSuccess { compute(object : SI3.I2 {}) }
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
STEP 1:
|
||||
dependencies: stdlib, lib1, lib2
|
||||
@@ -0,0 +1,7 @@
|
||||
MODULES: lib1, lib2, main
|
||||
|
||||
STEP 0:
|
||||
libs: lib1, lib2
|
||||
|
||||
STEP 1:
|
||||
libs: lib1, main
|
||||
Reference in New Issue
Block a user