Refactor JS tests: unified package name, test JS specific map implementations only in JS.
Add required files to build StdLibTestToJSTest. Remove tests StdLibMapJsTest and StdLibSetJsTest because they are tested elsewhere.
This commit is contained in:
@@ -1,17 +1,18 @@
|
||||
// this package referenced from testArrayScriptTest
|
||||
package jstest
|
||||
|
||||
fun testSize(): Int {
|
||||
val a1 = array<String>()
|
||||
val a2 = array("foo")
|
||||
val a3 = array("foo", "bar")
|
||||
val a1 = arrayOf<String>()
|
||||
val a2 = arrayOf("foo")
|
||||
val a3 = arrayOf("foo", "bar")
|
||||
|
||||
return a1.size() + a2.size() + a3.size()
|
||||
}
|
||||
|
||||
fun testToListToString(): String {
|
||||
val a1 = array<String>()
|
||||
val a2 = array("foo")
|
||||
val a3 = array("foo", "bar")
|
||||
val a1 = arrayOf<String>()
|
||||
val a2 = arrayOf("foo")
|
||||
val a3 = arrayOf("foo", "bar")
|
||||
|
||||
return a1.toList().toString() + "-" + a2.toList().toString() + "-" + a3.toList().toString()
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package jstest
|
||||
package test.collections
|
||||
|
||||
import org.junit.Test as test
|
||||
import kotlin.test.*
|
||||
@@ -7,9 +7,9 @@ import java.util.ArrayList;
|
||||
class JsArrayTest {
|
||||
|
||||
test fun arraySizeAndToList() {
|
||||
val a1 = array<String>()
|
||||
val a2 = array("foo")
|
||||
val a3 = array("foo", "bar")
|
||||
val a1 = arrayOf<String>()
|
||||
val a2 = arrayOf("foo")
|
||||
val a3 = arrayOf("foo", "bar")
|
||||
|
||||
assertEquals(0, a1.size())
|
||||
assertEquals(1, a2.size())
|
||||
@@ -22,7 +22,7 @@ class JsArrayTest {
|
||||
}
|
||||
|
||||
test fun arrayListFromCollection() {
|
||||
var c: Collection<String> = array("A", "B", "C").toList()
|
||||
var c: Collection<String> = arrayOf("A", "B", "C").toList()
|
||||
var a = ArrayList(c)
|
||||
|
||||
assertEquals(3, a.size())
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package testPackage
|
||||
package test.collections
|
||||
|
||||
import test.collections.behaviors.mapBehavior
|
||||
import kotlin.test.*
|
||||
|
||||
import java.util.*
|
||||
@@ -22,8 +23,8 @@ class ComplexMapJsTest : MapJsTest() {
|
||||
|
||||
override fun <T : kotlin.Comparable<T>> Collection<T>.toNormalizedList(): List<T> = this.toSortedList()
|
||||
// hashMapOf returns ComlpexHashMap because it is Generic
|
||||
override fun emptyMutableMap(): MutableMap<String, Int> = hashMapOf()
|
||||
override fun emptyMutableMapWithNullableKeyValue(): MutableMap<String?, Int?> = hashMapOf()
|
||||
override fun emptyMutableMap(): MutableMap<String, Int> = genericHashMapOf()
|
||||
override fun emptyMutableMapWithNullableKeyValue(): MutableMap<String?, Int?> = genericHashMapOf()
|
||||
}
|
||||
|
||||
class PrimitiveMapJsTest : MapJsTest() {
|
||||
@@ -41,6 +42,16 @@ class PrimitiveMapJsTest : MapJsTest() {
|
||||
override fun <T : kotlin.Comparable<T>> Collection<T>.toNormalizedList(): List<T> = this.toSortedList()
|
||||
override fun emptyMutableMap(): MutableMap<String, Int> = HashMap()
|
||||
override fun emptyMutableMapWithNullableKeyValue(): MutableMap<String?, Int?> = HashMap()
|
||||
|
||||
test fun compareBehavior() {
|
||||
val specialJsStringMap = HashMap<String, Any>()
|
||||
specialJsStringMap.put("k1", "v1")
|
||||
compare(genericHashMapOf("k1" to "v1"), specialJsStringMap) { mapBehavior() }
|
||||
|
||||
val specialJsNumberMap = HashMap<Int, Any>(4)
|
||||
specialJsNumberMap.put(5, "v5")
|
||||
compare(genericHashMapOf(5 to "v5"), specialJsNumberMap) { mapBehavior() }
|
||||
}
|
||||
}
|
||||
|
||||
class LinkedHashMapTest : MapJsTest() {
|
||||
@@ -475,4 +486,6 @@ abstract class MapJsTest {
|
||||
}
|
||||
return map
|
||||
}
|
||||
|
||||
fun genericHashMapOf<K, V>(vararg values: Pair<K, V>) = hashMapOf(*values)
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package test.collections
|
||||
|
||||
import kotlin.test.*
|
||||
import org.junit.Test
|
||||
import test.collections.behaviors.setBehavior
|
||||
import java.util.HashSet
|
||||
import java.util.LinkedHashSet
|
||||
|
||||
@@ -22,8 +23,10 @@ class ComplexSetJsTest : SetJsTest() {
|
||||
}
|
||||
|
||||
// hashSetOf returns ComlpexHashSet because it is Generic
|
||||
override fun createEmptyMutableSet(): MutableSet<String> = hashSetOf()
|
||||
override fun createEmptyMutableSetWithNullableValues(): MutableSet<String?> = hashSetOf()
|
||||
override fun createEmptyMutableSet(): MutableSet<String> = genericHashSetOf()
|
||||
override fun createEmptyMutableSetWithNullableValues(): MutableSet<String?> = genericHashSetOf()
|
||||
|
||||
|
||||
}
|
||||
|
||||
class PrimitiveSetJsTest : SetJsTest() {
|
||||
@@ -38,6 +41,17 @@ class PrimitiveSetJsTest : SetJsTest() {
|
||||
|
||||
assertEquals(data, set)
|
||||
}
|
||||
|
||||
Test fun compareBehavior() {
|
||||
val specialJsStringSet = HashSet<String>()
|
||||
specialJsStringSet.add("kotlin")
|
||||
compare(genericHashSetOf("kotlin"), specialJsStringSet) { setBehavior() }
|
||||
|
||||
val specialJsNumberSet = HashSet<Double>()
|
||||
specialJsNumberSet.add(3.14)
|
||||
compare(genericHashSetOf(3.14), specialJsNumberSet) { setBehavior() }
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class LinkedHashSetJsTest : SetJsTest() {
|
||||
@@ -58,7 +72,7 @@ abstract class SetJsTest {
|
||||
val data: Set<String> = createTestMutableSet()
|
||||
val empty: Set<String> = createEmptyMutableSet()
|
||||
|
||||
val SPECIAL_NAMES = array("__proto__", "constructor", "toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable")
|
||||
val SPECIAL_NAMES = arrayOf("__proto__", "constructor", "toString", "toLocaleString", "valueOf", "hasOwnProperty", "isPrototypeOf", "propertyIsEnumerable")
|
||||
|
||||
Test fun size() {
|
||||
assertEquals(2, data.size())
|
||||
@@ -222,4 +236,6 @@ abstract class SetJsTest {
|
||||
set.add("foo")
|
||||
return set
|
||||
}
|
||||
|
||||
fun genericHashSetOf<T>(vararg values: T) = hashSetOf(*values)
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package testPackage
|
||||
package test.collections
|
||||
|
||||
import java.util.Collections
|
||||
import java.util.ArrayList
|
||||
|
||||
Reference in New Issue
Block a user