From 513ef0c1c85a6f4a38c948a39f136e576c261ce3 Mon Sep 17 00:00:00 2001 From: Dmitry Petrov Date: Mon, 5 Sep 2016 11:32:41 +0300 Subject: [PATCH] Add test for SAM adapter. --- compiler/testData/ir/irText/lambdas/samAdapter.kt | 7 +++++++ compiler/testData/ir/irText/lambdas/samAdapter.txt | 14 ++++++++++++++ .../kotlin/ir/IrTextTestCaseGenerated.java | 6 ++++++ 3 files changed, 27 insertions(+) create mode 100644 compiler/testData/ir/irText/lambdas/samAdapter.kt create mode 100644 compiler/testData/ir/irText/lambdas/samAdapter.txt diff --git a/compiler/testData/ir/irText/lambdas/samAdapter.kt b/compiler/testData/ir/irText/lambdas/samAdapter.kt new file mode 100644 index 00000000000..53cad165aff --- /dev/null +++ b/compiler/testData/ir/irText/lambdas/samAdapter.kt @@ -0,0 +1,7 @@ +// FULL_JDK +// WITH_RUNTIME + +fun test1() { + val hello = Runnable { println("Hello, world!") } + hello.run() +} \ No newline at end of file diff --git a/compiler/testData/ir/irText/lambdas/samAdapter.txt b/compiler/testData/ir/irText/lambdas/samAdapter.txt new file mode 100644 index 00000000000..ad790d9a226 --- /dev/null +++ b/compiler/testData/ir/irText/lambdas/samAdapter.txt @@ -0,0 +1,14 @@ +FILE /samAdapter.kt + FUN public fun test1(): kotlin.Unit + BLOCK_BODY + VAR val hello: java.lang.Runnable + CALL .Runnable type=java.lang.Runnable operator=null + function: BLOCK type=() -> kotlin.Unit operator=LAMBDA + FUN local final fun (): kotlin.Unit + BLOCK_BODY + RETURN type=kotlin.Nothing from= + CALL .println type=kotlin.Unit operator=null + message: CONST String type=kotlin.String value='Hello, world!' + CALLABLE_REFERENCE type=() -> kotlin.Unit operator=LAMBDA + CALL .run type=kotlin.Unit operator=null + $this: GET_VAR hello type=java.lang.Runnable operator=null diff --git a/compiler/tests/org/jetbrains/kotlin/ir/IrTextTestCaseGenerated.java b/compiler/tests/org/jetbrains/kotlin/ir/IrTextTestCaseGenerated.java index c91c7186938..ba0bca5e01b 100644 --- a/compiler/tests/org/jetbrains/kotlin/ir/IrTextTestCaseGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/ir/IrTextTestCaseGenerated.java @@ -624,5 +624,11 @@ public class IrTextTestCaseGenerated extends AbstractIrTextTestCase { String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/ir/irText/lambdas/nonLocalReturn.kt"); doTest(fileName); } + + @TestMetadata("samAdapter.kt") + public void testSamAdapter() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/ir/irText/lambdas/samAdapter.kt"); + doTest(fileName); + } } }