JS: move more test to box tests

This commit is contained in:
Alexey Andreev
2016-08-29 14:51:32 +03:00
parent a18f5eca2d
commit 9bf124af3f
129 changed files with 766 additions and 685 deletions
@@ -0,0 +1,42 @@
package foo
@native
interface NativeTrait {
val foo: String
fun bar(a: Int): Any
@native("boo")
fun baz(): String
}
interface Trait : NativeTrait
class Class : NativeTrait {
override val foo: String = "Class().foo"
override fun bar(a: Int): Any = "Class().bar($a)"
override fun baz(): String = "Class().boo()"
}
class AnotherClass : Trait {
override val foo: String = "AnotherClass().foo"
override fun bar(a: Int): Any = "AnotherClass().bar($a)"
override fun baz(): String = "AnotherClass().boo()"
}
fun <T : NativeTrait> test(c: T, className: String) {
assertEquals("$className().foo", c.foo)
assertEquals("$className().bar(3)", c.bar(3))
assertEquals("$className().boo()", c.baz())
val t: NativeTrait = c
assertEquals("$className().foo", t.foo)
assertEquals("$className().bar(3)", t.bar(3))
assertEquals("$className().boo()", t.baz())
}
fun box(): String {
test(Class(), "Class")
test(AnotherClass(), "AnotherClass")
return "OK"
}