From 894c3bceac5939e1caff2d5feccf41e3949797ff Mon Sep 17 00:00:00 2001 From: "Pavel V. Talanov" Date: Tue, 20 Jan 2015 17:33:21 +0300 Subject: [PATCH] Test: add jvm backend test for named class object --- .../box/classes/extensionOnNamedClassObject.kt | 12 ++++++++++++ .../testData/codegen/box/classes/namedClassObject.kt | 12 ++++++++++++ .../generated/BlackBoxCodegenTestGenerated.java | 12 ++++++++++++ 3 files changed, 36 insertions(+) create mode 100644 compiler/testData/codegen/box/classes/extensionOnNamedClassObject.kt create mode 100644 compiler/testData/codegen/box/classes/namedClassObject.kt diff --git a/compiler/testData/codegen/box/classes/extensionOnNamedClassObject.kt b/compiler/testData/codegen/box/classes/extensionOnNamedClassObject.kt new file mode 100644 index 00000000000..b7e4bf8cdd2 --- /dev/null +++ b/compiler/testData/codegen/box/classes/extensionOnNamedClassObject.kt @@ -0,0 +1,12 @@ +class C() { + class object Foo +} + +fun C.Foo.create() = 3 + +fun box(): String { + val c1 = C.Foo.create() + val c2 = C.create() + return if (c1 == 3 && c2 == 3) "OK" else "fail" +} + diff --git a/compiler/testData/codegen/box/classes/namedClassObject.kt b/compiler/testData/codegen/box/classes/namedClassObject.kt new file mode 100644 index 00000000000..8272e4dd0a4 --- /dev/null +++ b/compiler/testData/codegen/box/classes/namedClassObject.kt @@ -0,0 +1,12 @@ +class C() { + class object Foo { + fun create() = 3 + } +} + +fun box(): String { + val c1 = C.Foo.create() + val c2 = C.create() + return if (c1 == 3 && c2 == 3) "OK" else "fail" +} + diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxCodegenTestGenerated.java index 98bc8cd568a..17fe6a1d6d0 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxCodegenTestGenerated.java @@ -1004,6 +1004,12 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { doTest(fileName); } + @TestMetadata("extensionOnNamedClassObject.kt") + public void testExtensionOnNamedClassObject() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/classes/extensionOnNamedClassObject.kt"); + doTest(fileName); + } + @TestMetadata("funDelegation.kt") public void testFunDelegation() throws Exception { String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/classes/funDelegation.kt"); @@ -1388,6 +1394,12 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { doTest(fileName); } + @TestMetadata("namedClassObject.kt") + public void testNamedClassObject() throws Exception { + String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/classes/namedClassObject.kt"); + doTest(fileName); + } + @TestMetadata("outerThis.kt") public void testOuterThis() throws Exception { String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/classes/outerThis.kt");