KJS: use cached KClass instead create new each time when getting it from JsClass

This commit is contained in:
Zalim Bashorov
2016-10-17 13:44:51 +03:00
parent a085df914f
commit 5f2ba70745
4 changed files with 15 additions and 7 deletions
+7
View File
@@ -18,6 +18,13 @@ fun <T> assertNotEquals(illegal: T, actual: T, message: String? = null) {
}
}
fun <T> assertSame(expected: T, actual: T, message: String? = null) {
if (expected !== actual) {
val msg = if (message == null) "" else (" message = '" + message + "',")
fail("Expected same instances, got expected = '$expected', actual = '$actual'")
}
}
fun <T> assertArrayEquals(expected: Array<out T>, actual: Array<out T>, message: String? = null) {
if (!arraysEqual(expected, actual)) {
val msg = if (message == null) "" else (" message = '" + message + "',")
@@ -6,10 +6,10 @@ fun check(k: KClass<*>, j: JsClass<*>) {
assertNotEquals(null, k)
assertNotEquals(null, j)
assertEquals(k.js, j)
assertEquals(k, j.kotlin)
assertEquals(j, j.kotlin.js)
assertEquals(k, k.js.kotlin)
assertSame(k.js, j)
assertSame(k, j.kotlin)
assertSame(j, j.kotlin.js)
assertSame(k, k.js.kotlin)
}
fun jsClassbyName(name: String) = js("JS_TESTS").foo[name]