Add tests on callable references
Object members and accessors for private class members
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
object A {
|
||||
var result = "Fail"
|
||||
|
||||
fun foo() {
|
||||
result = "OK"
|
||||
}
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val x = A::foo
|
||||
A.x()
|
||||
return A.result
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
object A {
|
||||
var result = "Fail"
|
||||
|
||||
fun foo(newResult: String) {
|
||||
result = newResult
|
||||
}
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val x = A::foo
|
||||
A.x("OK")
|
||||
return A.result
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
class A {
|
||||
private fun foo() = "OK"
|
||||
|
||||
fun bar() = this.(::foo)()
|
||||
}
|
||||
|
||||
fun box() = A().bar()
|
||||
@@ -666,6 +666,21 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
|
||||
doTest("compiler/testData/codegen/box/callableReference/newArray.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("objectMemberUnitNoArgs.kt")
|
||||
public void testObjectMemberUnitNoArgs() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/callableReference/objectMemberUnitNoArgs.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("objectMemberUnitOneStringArg.kt")
|
||||
public void testObjectMemberUnitOneStringArg() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/callableReference/objectMemberUnitOneStringArg.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("privateClassMember.kt")
|
||||
public void testPrivateClassMember() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/callableReference/privateClassMember.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("sortListOfStrings.kt")
|
||||
public void testSortListOfStrings() throws Exception {
|
||||
doTest("compiler/testData/codegen/box/callableReference/sortListOfStrings.kt");
|
||||
|
||||
Reference in New Issue
Block a user