Fix Array<out> variance in stdlib #KT-6482 Fixed
This commit is contained in:
@@ -200,13 +200,16 @@ class ArraysJVMTest {
|
||||
|
||||
test fun orEmptyNull() {
|
||||
val x: Array<String>? = null
|
||||
val xArray: Array<String> = x.orEmpty()
|
||||
val y: Array<out String>? = null
|
||||
val xArray = x.orEmpty()
|
||||
val yArray = y.orEmpty()
|
||||
expect(0) { xArray.size() }
|
||||
expect(0) { yArray.size() }
|
||||
}
|
||||
|
||||
test fun orEmptyNotNull() {
|
||||
val x: Array<String>? = array("1", "2")
|
||||
val xArray: Array<String> = x.orEmpty()
|
||||
val xArray = x.orEmpty()
|
||||
expect(2) { xArray.size() }
|
||||
expect("1") { xArray[0] }
|
||||
expect("2") { xArray[1] }
|
||||
|
||||
@@ -170,6 +170,11 @@ class ArraysTest {
|
||||
assertEquals(listOf("1","2","3","4"), listOf("1", "2") + array("3", "4"))
|
||||
}
|
||||
|
||||
test fun plusVararg() {
|
||||
fun onePlus(vararg a: String) = array("1") + a
|
||||
assertEquals(listOf("1","2"), onePlus("2"))
|
||||
}
|
||||
|
||||
test fun first() {
|
||||
expect(1) { array(1,2,3).first() }
|
||||
expect(2) { array(1,2,3).first { it % 2 == 0 } }
|
||||
|
||||
Reference in New Issue
Block a user