JS backend: testFiles -> testData
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
package foo
|
||||
|
||||
public trait A {
|
||||
fun foo() {
|
||||
}
|
||||
}
|
||||
public trait B : A {
|
||||
fun boo() {
|
||||
}
|
||||
}
|
||||
|
||||
native fun eval(code: String): Any = noImpl
|
||||
native val undefined: Any = noImpl
|
||||
native class Function(vararg args: String)
|
||||
|
||||
val hasProp = Function("obj, prop", "return obj[prop] !== undefined") as ((Any, String) -> Boolean)
|
||||
|
||||
fun box(): String {
|
||||
val a = object: A {
|
||||
}
|
||||
val b = object: B {
|
||||
}
|
||||
|
||||
if (!hasProp(a, "foo")) return "A hasn't foo"
|
||||
if (hasProp(a, "boo")) return "A has boo"
|
||||
|
||||
if (!hasProp(b, "foo")) return "B hasn't foo"
|
||||
if (!hasProp(b, "boo")) return "B hasn't boo"
|
||||
|
||||
val PREFIX = "Kotlin.modules.JS_TESTS.foo"
|
||||
if (eval("$PREFIX.A") == null) return "$PREFIX.A not found"
|
||||
if (eval("$PREFIX.B") == null) return "$PREFIX.B not found"
|
||||
if (eval("$PREFIX.A === $PREFIX.B") as Boolean) return "A and B refer to the same object"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
Reference in New Issue
Block a user