From ae62ccb76d0dcd99f02bb7be85dbf6ef106a4900 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Fri, 29 Nov 2019 17:20:57 +0300 Subject: [PATCH] [FIR TEST]: add test with synthetic on Java getter overridden in Kotlin --- .../expresssions/overriddenJavaGetter.kt | 19 +++++++++++++++++++ .../expresssions/overriddenJavaGetter.txt | 16 ++++++++++++++++ .../fir/FirDiagnosticsTestGenerated.java | 5 +++++ 3 files changed, 40 insertions(+) create mode 100644 compiler/fir/resolve/testData/resolve/expresssions/overriddenJavaGetter.kt create mode 100644 compiler/fir/resolve/testData/resolve/expresssions/overriddenJavaGetter.txt diff --git a/compiler/fir/resolve/testData/resolve/expresssions/overriddenJavaGetter.kt b/compiler/fir/resolve/testData/resolve/expresssions/overriddenJavaGetter.kt new file mode 100644 index 00000000000..f950fbe0355 --- /dev/null +++ b/compiler/fir/resolve/testData/resolve/expresssions/overriddenJavaGetter.kt @@ -0,0 +1,19 @@ +// FILE: Base.java + +public class Base { + public String getSomething() { + return ""; + } +} + +// FILE: Derived.kt + +class Derived : Base() { + override fun getSomething(): String = "42" +} + +fun test() { + val d = Derived() + val res1 = d.something // Should be Ok + val res2 = d.getSomething() // Should be Ok +} \ No newline at end of file diff --git a/compiler/fir/resolve/testData/resolve/expresssions/overriddenJavaGetter.txt b/compiler/fir/resolve/testData/resolve/expresssions/overriddenJavaGetter.txt new file mode 100644 index 00000000000..78fc2c5ca70 --- /dev/null +++ b/compiler/fir/resolve/testData/resolve/expresssions/overriddenJavaGetter.txt @@ -0,0 +1,16 @@ +FILE: Derived.kt + public final class Derived : R|Base| { + public constructor(): R|Derived| { + super() + } + + public final override fun getSomething(): R|kotlin/String| { + ^getSomething String(42) + } + + } + public final fun test(): R|kotlin/Unit| { + lval d: R|Derived| = R|/Derived.Derived|() + lval res1: R|ft!| = R|/d|.R|/Base.something| + lval res2: R|kotlin/String| = R|/d|.R|/Derived.getSomething|() + } diff --git a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java index 122cf81180e..a977cebe630 100644 --- a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java +++ b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/FirDiagnosticsTestGenerated.java @@ -514,6 +514,11 @@ public class FirDiagnosticsTestGenerated extends AbstractFirDiagnosticsTest { runTest("compiler/fir/resolve/testData/resolve/expresssions/outerObject.kt"); } + @TestMetadata("overriddenJavaGetter.kt") + public void testOverriddenJavaGetter() throws Exception { + runTest("compiler/fir/resolve/testData/resolve/expresssions/overriddenJavaGetter.kt"); + } + @TestMetadata("privateObjectLiteral.kt") public void testPrivateObjectLiteral() throws Exception { runTest("compiler/fir/resolve/testData/resolve/expresssions/privateObjectLiteral.kt");