Revert "[JS IR] [runtime] Remove valueOf method from Long"
This reverts commit e13b6b2a90.
The significance of the breakage caused by the removal of `valueOf`
was underestimated.
#KT-50202 Open
This commit is contained in:
@@ -7414,6 +7414,12 @@ public class BoxJsTestGenerated extends AbstractBoxJsTest {
|
||||
runTest("js/js.translator/testData/box/native/library.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("long.kt")
|
||||
public void testLong() throws Exception {
|
||||
runTest("js/js.translator/testData/box/native/long.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("nativeClassAsReifiedTypeArgument.kt")
|
||||
public void testNativeClassAsReifiedTypeArgument() throws Exception {
|
||||
|
||||
+6
@@ -7792,6 +7792,12 @@ public class IrBoxJsTestGenerated extends AbstractIrBoxJsTest {
|
||||
runTest("js/js.translator/testData/box/native/kt2209.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("long.kt")
|
||||
public void testLong() throws Exception {
|
||||
runTest("js/js.translator/testData/box/native/long.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("nativeClassAsReifiedTypeArgument.kt")
|
||||
public void testNativeClassAsReifiedTypeArgument() throws Exception {
|
||||
|
||||
+2
-2
@@ -27,7 +27,7 @@ fun testKt14013() {
|
||||
if (testUtils.isLegacyBackend()) {
|
||||
assertEquals(",1;[...];,1;", pullLog(), "testKt14013")
|
||||
} else {
|
||||
assertEquals(",1;[...];[...];", pullLog(), "testKt14013")
|
||||
assertEquals("[...];[...];[...];", pullLog(), "testKt14013")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -74,7 +74,7 @@ fun box(): String {
|
||||
if (testUtils.isLegacyBackend()) {
|
||||
assertEquals("1,2,3;1,2,3;[...];", pullLog(), "anyValueToString")
|
||||
} else {
|
||||
assertEquals("[...];1,2,3;1,2,3;", pullLog(), "anyValueToString")
|
||||
assertEquals("[...];[...];[...];", pullLog(), "anyValueToString")
|
||||
}
|
||||
|
||||
return "OK"
|
||||
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
// EXPECTED_REACHABLE_NODES: 1273
|
||||
// DONT_TARGET_EXACT_BACKEND: WASM
|
||||
// WASM_MUTE_REASON: UNSUPPORTED_JS_INTEROP
|
||||
// KJS_WITH_FULL_RUNTIME
|
||||
|
||||
// Test that APIs expecting Number behave correctly with Long values.
|
||||
|
||||
import kotlin.js.Date
|
||||
|
||||
fun box(): String {
|
||||
assertEquals("1970-01-01T00:00:00.000Z", Date(0L).toISOString())
|
||||
assertEquals("10/4/1995, 12:00:00 AM", Date(1995, 9, 4, 0, 0, 0, 0L).toLocaleString("en-US"))
|
||||
assertEquals(812764800000.0, Date.UTC(1995, 9, 4, 0, 0, 0, 0L))
|
||||
|
||||
return "OK"
|
||||
}
|
||||
+33
-33
@@ -39,39 +39,39 @@ fun box(): String {
|
||||
if (" ${null as Number?}" != " null") return "FAIL 10"
|
||||
if (" ${x.toLong() as Any?}" != " $x") return "FAIL 11"
|
||||
if (" ${null as Any?}" != " null") return "FAIL 12"
|
||||
if (!testUtils.isLegacyBackend()) {
|
||||
if (longToString(x.toLong()) != " $x") return "FAIL 13"
|
||||
if (nullableLongToString1(x.toLong()) != " $x") return "FAIL 14"
|
||||
if (nullableLongToString1(null) != " null") return "FAIL 15"
|
||||
if (nullableLongToString2(x.toLong()) != " $x") return "FAIL 16"
|
||||
if (nullableLongToString2(null) != " null") return "FAIL 17"
|
||||
if (nullableLongToString3(x.toLong()) != " $x") return "FAIL 18"
|
||||
if (nullableLongToString3(null) != " null") return "FAIL 19"
|
||||
if (numberToString(x.toLong()) != " $x") return "FAIL 20"
|
||||
if (nullableNumberToString1(x.toLong()) != " $x") return "FAIL 21"
|
||||
if (nullableNumberToString1(null) != " null") return "FAIL 22"
|
||||
if (nullableNumberToString2(x.toLong()) != " $x") return "FAIL 23"
|
||||
if (nullableNumberToString2(null) != " null") return "FAIL 24"
|
||||
if (nullableNumberToString3(x.toLong()) != " $x") return "FAIL 25"
|
||||
if (nullableNumberToString3(null) != " null") return "FAIL 26"
|
||||
if (comparableToString(x.toLong()) != " $x") return "FAIL 27"
|
||||
if (nullableComparableToString1(x.toLong()) != " $x") return "FAIL 28"
|
||||
if (nullableComparableToString1(null) != " null") return "FAIL 29"
|
||||
if (nullableComparableToString2(x.toLong()) != " $x") return "FAIL 30"
|
||||
if (nullableComparableToString2(null) != " null") return "FAIL 31"
|
||||
if (nullableComparableToString3(x.toLong()) != " $x") return "FAIL 32"
|
||||
if (nullableComparableToString3(null) != " null") return "FAIL 33"
|
||||
if (anyToString(x.toLong()) != " $x") return "FAIL 34"
|
||||
if (nullableAnyToString1(x.toLong()) != " $x") return "FAIL 35"
|
||||
if (nullableAnyToString1(null) != " null") return "FAIL 36"
|
||||
if (nullableAnyToString2(x.toLong()) != " $x") return "FAIL 37"
|
||||
if (nullableAnyToString2(null) != " null") return "FAIL 38"
|
||||
if (nullableAnyToString3(x.toLong()) != " $x") return "FAIL 39"
|
||||
if (nullableAnyToString3(null) != " null") return "FAIL 40"
|
||||
if (arbitraryToString(x.toLong()) != " $x") return "FAIL 41"
|
||||
if (nullableArbitraryToString(x.toLong()) != " $x") return "FAIL 42"
|
||||
if (nullableArbitraryToString(null) != " null") return "FAIL 43"
|
||||
}
|
||||
// if (!testUtils.isLegacyBackend()) {
|
||||
// if (longToString(x.toLong()) != " $x") return "FAIL 13"
|
||||
// if (nullableLongToString1(x.toLong()) != " $x") return "FAIL 14"
|
||||
// if (nullableLongToString1(null) != " null") return "FAIL 15"
|
||||
// if (nullableLongToString2(x.toLong()) != " $x") return "FAIL 16"
|
||||
// if (nullableLongToString2(null) != " null") return "FAIL 17"
|
||||
// if (nullableLongToString3(x.toLong()) != " $x") return "FAIL 18"
|
||||
// if (nullableLongToString3(null) != " null") return "FAIL 19"
|
||||
// if (numberToString(x.toLong()) != " $x") return "FAIL 20"
|
||||
// if (nullableNumberToString1(x.toLong()) != " $x") return "FAIL 21"
|
||||
// if (nullableNumberToString1(null) != " null") return "FAIL 22"
|
||||
// if (nullableNumberToString2(x.toLong()) != " $x") return "FAIL 23"
|
||||
// if (nullableNumberToString2(null) != " null") return "FAIL 24"
|
||||
// if (nullableNumberToString3(x.toLong()) != " $x") return "FAIL 25"
|
||||
// if (nullableNumberToString3(null) != " null") return "FAIL 26"
|
||||
// if (comparableToString(x.toLong()) != " $x") return "FAIL 27"
|
||||
// if (nullableComparableToString1(x.toLong()) != " $x") return "FAIL 28"
|
||||
// if (nullableComparableToString1(null) != " null") return "FAIL 29"
|
||||
// if (nullableComparableToString2(x.toLong()) != " $x") return "FAIL 30"
|
||||
// if (nullableComparableToString2(null) != " null") return "FAIL 31"
|
||||
// if (nullableComparableToString3(x.toLong()) != " $x") return "FAIL 32"
|
||||
// if (nullableComparableToString3(null) != " null") return "FAIL 33"
|
||||
// if (anyToString(x.toLong()) != " $x") return "FAIL 34"
|
||||
// if (nullableAnyToString1(x.toLong()) != " $x") return "FAIL 35"
|
||||
// if (nullableAnyToString1(null) != " null") return "FAIL 36"
|
||||
// if (nullableAnyToString2(x.toLong()) != " $x") return "FAIL 37"
|
||||
// if (nullableAnyToString2(null) != " null") return "FAIL 38"
|
||||
// if (nullableAnyToString3(x.toLong()) != " $x") return "FAIL 39"
|
||||
// if (nullableAnyToString3(null) != " null") return "FAIL 40"
|
||||
// if (arbitraryToString(x.toLong()) != " $x") return "FAIL 41"
|
||||
// if (nullableArbitraryToString(x.toLong()) != " $x") return "FAIL 42"
|
||||
// if (nullableArbitraryToString(null) != " null") return "FAIL 43"
|
||||
// }
|
||||
|
||||
return "OK"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user