KT-2752: add checkers for inconsistent usage of JsName
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
package foo
|
||||
|
||||
class A {
|
||||
fun foo() = 23
|
||||
|
||||
val bar = 123
|
||||
|
||||
companion object {
|
||||
fun foo() = 42
|
||||
|
||||
val bar = 142
|
||||
}
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
assertEquals(23, A().foo())
|
||||
assertEquals(42, A.foo())
|
||||
|
||||
assertEquals(123, A().bar)
|
||||
assertEquals(142, A.bar)
|
||||
|
||||
return "OK"
|
||||
}
|
||||
+18
@@ -0,0 +1,18 @@
|
||||
package foo
|
||||
|
||||
class A
|
||||
|
||||
class B
|
||||
|
||||
val A.foo: Int
|
||||
get() = 32
|
||||
|
||||
val B.foo: Int
|
||||
get() = 42
|
||||
|
||||
fun box(): String {
|
||||
assertEquals(32, A().foo)
|
||||
assertEquals(42, B().foo)
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package foo
|
||||
|
||||
class A
|
||||
|
||||
fun A.bar() = 23
|
||||
|
||||
val A.bar: Int
|
||||
get() = 42
|
||||
|
||||
fun box(): String {
|
||||
assertEquals(23, A().bar())
|
||||
assertEquals(42, A().bar)
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package foo
|
||||
|
||||
@JsName("bar") fun foo(x: Int) = x
|
||||
|
||||
private fun bar() = 42
|
||||
|
||||
fun box(): String {
|
||||
assertEquals(23, foo(23))
|
||||
assertEquals(42, bar())
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package foo
|
||||
|
||||
fun bar() = 23
|
||||
|
||||
private val bar = 32
|
||||
|
||||
fun box(): String {
|
||||
assertEquals(23, bar())
|
||||
assertEquals(32, bar)
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package foo
|
||||
|
||||
@native fun bar()
|
||||
|
||||
val bar = 32
|
||||
|
||||
fun createNativeBar() = js("bar = function() { return 23; };")
|
||||
|
||||
fun box(): String {
|
||||
createNativeBar()
|
||||
|
||||
assertEquals(23, bar())
|
||||
assertEquals(32, bar)
|
||||
|
||||
return "OK"
|
||||
}
|
||||
Reference in New Issue
Block a user