From 19084b8182576bae3675110ba470920454b05b25 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Mon, 14 Dec 2015 12:52:43 +0300 Subject: [PATCH] Additional codegen test for KT-10107 --- .../delegatedProperty/delegateWithPrivateSet.kt | 13 +++++++++++++ .../BlackBoxWithStdlibCodegenTestGenerated.java | 6 ++++++ 2 files changed, 19 insertions(+) create mode 100644 compiler/testData/codegen/boxWithStdlib/delegatedProperty/delegateWithPrivateSet.kt diff --git a/compiler/testData/codegen/boxWithStdlib/delegatedProperty/delegateWithPrivateSet.kt b/compiler/testData/codegen/boxWithStdlib/delegatedProperty/delegateWithPrivateSet.kt new file mode 100644 index 00000000000..35643b6cd0c --- /dev/null +++ b/compiler/testData/codegen/boxWithStdlib/delegatedProperty/delegateWithPrivateSet.kt @@ -0,0 +1,13 @@ +// See KT-10107: 'Variable must be initialized' for delegate with private set + +class My { + var delegate: String by kotlin.properties.Delegates.notNull() + private set + + init { + delegate = "OK" + } +} + +fun box() = My().delegate + diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxWithStdlibCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxWithStdlibCodegenTestGenerated.java index 31d90007d9c..e7778e55637 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxWithStdlibCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/generated/BlackBoxWithStdlibCodegenTestGenerated.java @@ -1468,6 +1468,12 @@ public class BlackBoxWithStdlibCodegenTestGenerated extends AbstractBlackBoxCode KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/boxWithStdlib/delegatedProperty"), Pattern.compile("^(.+)\\.kt$"), true); } + @TestMetadata("delegateWithPrivateSet.kt") + public void testDelegateWithPrivateSet() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/delegatedProperty/delegateWithPrivateSet.kt"); + doTestWithStdlib(fileName); + } + @TestMetadata("kt6722.kt") public void testKt6722() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/boxWithStdlib/delegatedProperty/kt6722.kt");