From 62bb127fc9af6ff11d382628f54f14a128a5d256 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Thu, 29 Aug 2019 15:35:41 +0300 Subject: [PATCH] FIR: add K/J test with getValue() / value fake cycle --- .../fieldAccessFromDerived/extraDump.java.txt | 6 ++++++ .../fieldAccessFromDerived/jvm/Base.java | 3 +++ .../fieldAccessFromDerived/jvm/Derived.kt | 5 +++++ .../fieldAccessFromDerived/jvm/Derived.txt | 15 +++++++++++++++ .../fir/FirMultiModuleResolveTestGenerated.java | 5 +++++ 5 files changed, 34 insertions(+) create mode 100644 idea/testData/fir/multiModule/fieldAccessFromDerived/extraDump.java.txt create mode 100644 idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Base.java create mode 100644 idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Derived.kt create mode 100644 idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Derived.txt diff --git a/idea/testData/fir/multiModule/fieldAccessFromDerived/extraDump.java.txt b/idea/testData/fir/multiModule/fieldAccessFromDerived/extraDump.java.txt new file mode 100644 index 00000000000..87ce38e350f --- /dev/null +++ b/idea/testData/fir/multiModule/fieldAccessFromDerived/extraDump.java.txt @@ -0,0 +1,6 @@ +public open class Base : R|kotlin/Any| { + public open field value: + + public constructor(): R|Base| + +} diff --git a/idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Base.java b/idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Base.java new file mode 100644 index 00000000000..2538fed2533 --- /dev/null +++ b/idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Base.java @@ -0,0 +1,3 @@ +public class Base { + public int value = 0; +} \ No newline at end of file diff --git a/idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Derived.kt b/idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Derived.kt new file mode 100644 index 00000000000..af4d5ff8c3b --- /dev/null +++ b/idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Derived.kt @@ -0,0 +1,5 @@ +class Derived : Base() { + fun getValue() = value + + fun foo() = value +} \ No newline at end of file diff --git a/idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Derived.txt b/idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Derived.txt new file mode 100644 index 00000000000..af5efd4fb2d --- /dev/null +++ b/idea/testData/fir/multiModule/fieldAccessFromDerived/jvm/Derived.txt @@ -0,0 +1,15 @@ +FILE: Derived.kt + public final class Derived : R|Base| { + public constructor(): R|Derived| { + super() + } + + public final fun getValue(): { + ^getValue D|this@R|/Base||.R|/Base.value| + } + + public final fun foo(): R|kotlin/Int| { + ^foo D|this@R|/Base||.R|/Base.value| + } + + } diff --git a/idea/tests/org/jetbrains/kotlin/idea/fir/FirMultiModuleResolveTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/fir/FirMultiModuleResolveTestGenerated.java index b4b015949d8..7405981f8a0 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/fir/FirMultiModuleResolveTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/fir/FirMultiModuleResolveTestGenerated.java @@ -59,6 +59,11 @@ public class FirMultiModuleResolveTestGenerated extends AbstractFirMultiModuleRe runTest("idea/testData/fir/multiModule/basicWithPrimitiveJava/"); } + @TestMetadata("fieldAccessFromDerived") + public void testFieldAccessFromDerived() throws Exception { + runTest("idea/testData/fir/multiModule/fieldAccessFromDerived/"); + } + @TestMetadata("fullWithJavaPredefinedSignature") public void testFullWithJavaPredefinedSignature() throws Exception { runTest("idea/testData/fir/multiModule/fullWithJavaPredefinedSignature/");