[JS IR] Move tests for JS code diagnostics

^KT-62425
This commit is contained in:
Alexander Korepanov
2023-10-12 13:14:17 +02:00
committed by Space Team
parent 78aa34b3e8
commit 04809a6b3b
22 changed files with 92 additions and 92 deletions
@@ -0,0 +1,24 @@
val a = "1"
fun nonConst(): String = "1"
fun test() {
val b = "b"
js(a)
js((b))
js(("c"))
js(<!ARGUMENT_TYPE_MISMATCH!>3<!>)
js(<!ARGUMENT_TYPE_MISMATCH!>3 + 2<!>)
js(<!ARGUMENT_TYPE_MISMATCH!>1.0f<!>)
js(<!ARGUMENT_TYPE_MISMATCH!>true<!>)
js("$a")
js("${1}")
js("$b;")
js("${b}bb")
js(a + a)
js("a" + "a")
js("ccc")
js(nonConst())
}
@@ -0,0 +1,24 @@
val a = "1"
fun nonConst(): String = "1"
fun test() {
val b = "b"
js(a)
js((b))
js(("c"))
js(<!CONSTANT_EXPECTED_TYPE_MISMATCH, JSCODE_ARGUMENT_SHOULD_BE_CONSTANT!>3<!>)
js(<!JSCODE_ARGUMENT_SHOULD_BE_CONSTANT, TYPE_MISMATCH!>3 + 2<!>)
js(<!CONSTANT_EXPECTED_TYPE_MISMATCH, JSCODE_ARGUMENT_SHOULD_BE_CONSTANT!>1.0f<!>)
js(<!CONSTANT_EXPECTED_TYPE_MISMATCH, JSCODE_ARGUMENT_SHOULD_BE_CONSTANT!>true<!>)
js("$a")
js("${1}")
js("$b;")
js("${b}bb")
js(a + a)
js("a" + "a")
js("ccc")
js(<!JSCODE_ARGUMENT_SHOULD_BE_CONSTANT!>nonConst()<!>)
}
@@ -0,0 +1,5 @@
package
public val a: kotlin.String = "1"
public fun nonConst(): kotlin.String
public fun test(): kotlin.Unit
@@ -0,0 +1,4 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
fun Int.foo(x: Int) {
js("this = x;")
}
@@ -0,0 +1,4 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
fun Int.foo(x: Int) {
js("this = x<!JSCODE_ERROR!><!>;")
}
@@ -0,0 +1,3 @@
package
public fun kotlin.Int.foo(/*0*/ x: kotlin.Int): kotlin.Unit
@@ -0,0 +1,8 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
fun foo(x: Any) {
js("delete x.foo;")
js("delete x['bar'];")
js("delete x.baz();")
js("delete this;")
}
@@ -0,0 +1,8 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
fun foo(x: Any) {
js("delete x.foo;")
js("delete x['bar'];")
js("delete x.baz<!JSCODE_ERROR!>()<!>;")
js("delete <!JSCODE_ERROR!>this<!>;")
}
@@ -0,0 +1,3 @@
package
public fun foo(/*0*/ x: kotlin.Any): kotlin.Unit
@@ -0,0 +1,25 @@
val code = """
var s = "hello"
+ );
"""
fun main(): Unit {
js("var = 10;")
js("""var = 10;""")
js("""var
= 777;
""")
js("""
var = 777;
""")
js("var " + " = " + "10;")
val n = 10
js("var = $n;")
js(code)
}
@@ -0,0 +1,25 @@
val code = """
var s = "hello"
+ );
"""
fun main(): Unit {
js("var<!JSCODE_ERROR!> =<!> 10;")
js("""var<!JSCODE_ERROR!> =<!> 10;""")
js("""var<!JSCODE_ERROR!>
=<!> 777;
""")
js("""
var<!JSCODE_ERROR!> =<!> 777;
""")
js(<!JSCODE_ERROR!>"var " + " = " + "10;"<!>)
val n = 10
js(<!JSCODE_ERROR!>"var = $n;"<!>)
js(<!JSCODE_ERROR!>code<!>)
}
@@ -0,0 +1,7 @@
package
public val code: kotlin.String = "
var s = "hello"
+ );
"
public fun main(): kotlin.Unit
@@ -0,0 +1,16 @@
fun test() {
js("")
js(" ")
js("""
""")
val empty = ""
js(empty)
val whitespace = " "
js(whitespace)
val multiline = """
"""
js(multiline)
}
@@ -0,0 +1,16 @@
fun test() {
js(<!JSCODE_NO_JAVASCRIPT_PRODUCED!>""<!>)
js(<!JSCODE_NO_JAVASCRIPT_PRODUCED!>" "<!>)
js(<!JSCODE_NO_JAVASCRIPT_PRODUCED!>"""
"""<!>)
val empty = ""
js(<!JSCODE_NO_JAVASCRIPT_PRODUCED!>empty<!>)
val whitespace = " "
js(<!JSCODE_NO_JAVASCRIPT_PRODUCED!>whitespace<!>)
val multiline = """
"""
js(<!JSCODE_NO_JAVASCRIPT_PRODUCED!>multiline<!>)
}
@@ -0,0 +1,3 @@
package
public fun test(): kotlin.Unit
@@ -0,0 +1,10 @@
fun main(): Unit {
js("var a = 08;")
js("""var a =
08;""")
val code = "var a = 08;"
js(code)
}
@@ -0,0 +1,10 @@
fun main(): Unit {
js("var a =<!JSCODE_WARNING!> 08<!>;")
js("""var a =<!JSCODE_WARNING!>
08<!>;""")
val code = "var a = 08;"
js(<!JSCODE_WARNING!>code<!>)
}
@@ -0,0 +1,3 @@
package
public fun main(): kotlin.Unit