From 6ebd4b954cf49d657afefe24e58bc8443dd578c5 Mon Sep 17 00:00:00 2001 From: Roman Golyshev Date: Mon, 1 Mar 2021 10:23:57 +0000 Subject: [PATCH] Add new reference resolve tests The main purpose is to show that old frontend and FIR work differently in the case of the conflicts of local and top level classes/objects See the tests that marked with // IGNORE_FIR Corresponding ticket is ^KT-45192 --- .../FirReferenceResolveTestGenerated.java | 50 +++++++++++++++++++ .../TopLevelClassVsLocalClassConstructor.kt | 11 ++++ .../TopLevelClassVsLocalClassConstructor2.kt | 11 ++++ .../TopLevelClassVsLocalClassQualifier.kt | 13 +++++ ...lCompanionObjectVsLocalClassConstructor.kt | 15 ++++++ ...CompanionObjectVsLocalClassConstructor2.kt | 15 ++++++ ...velCompanionObjectVsLocalClassQualifier.kt | 13 +++++ .../TopLevelObjectVsLocalClassConstructor.kt | 11 ++++ .../TopLevelObjectVsLocalClassConstructor2.kt | 13 +++++ .../TopLevelObjectVsLocalClassConstructor3.kt | 15 ++++++ .../TopLevelObjectVsLocalClassQualifier.kt | 11 ++++ .../ReferenceResolveTestGenerated.java | 50 +++++++++++++++++++ 12 files changed, 228 insertions(+) create mode 100644 idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor.kt create mode 100644 idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor2.kt create mode 100644 idea/testData/resolve/references/TopLevelClassVsLocalClassQualifier.kt create mode 100644 idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor.kt create mode 100644 idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor2.kt create mode 100644 idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassQualifier.kt create mode 100644 idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor.kt create mode 100644 idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor2.kt create mode 100644 idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor3.kt create mode 100644 idea/testData/resolve/references/TopLevelObjectVsLocalClassQualifier.kt diff --git a/idea/idea-fir/tests/org/jetbrains/kotlin/idea/resolve/FirReferenceResolveTestGenerated.java b/idea/idea-fir/tests/org/jetbrains/kotlin/idea/resolve/FirReferenceResolveTestGenerated.java index 9b5670d96b6..edd6cd6a635 100644 --- a/idea/idea-fir/tests/org/jetbrains/kotlin/idea/resolve/FirReferenceResolveTestGenerated.java +++ b/idea/idea-fir/tests/org/jetbrains/kotlin/idea/resolve/FirReferenceResolveTestGenerated.java @@ -369,6 +369,56 @@ public class FirReferenceResolveTestGenerated extends AbstractFirReferenceResolv runTest("idea/testData/resolve/references/SyntheticProperty.kt"); } + @TestMetadata("TopLevelClassVsLocalClassConstructor.kt") + public void testTopLevelClassVsLocalClassConstructor() throws Exception { + runTest("idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor.kt"); + } + + @TestMetadata("TopLevelClassVsLocalClassConstructor2.kt") + public void testTopLevelClassVsLocalClassConstructor2() throws Exception { + runTest("idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor2.kt"); + } + + @TestMetadata("TopLevelClassVsLocalClassQualifier.kt") + public void testTopLevelClassVsLocalClassQualifier() throws Exception { + runTest("idea/testData/resolve/references/TopLevelClassVsLocalClassQualifier.kt"); + } + + @TestMetadata("TopLevelCompanionObjectVsLocalClassConstructor.kt") + public void testTopLevelCompanionObjectVsLocalClassConstructor() throws Exception { + runTest("idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor.kt"); + } + + @TestMetadata("TopLevelCompanionObjectVsLocalClassConstructor2.kt") + public void testTopLevelCompanionObjectVsLocalClassConstructor2() throws Exception { + runTest("idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor2.kt"); + } + + @TestMetadata("TopLevelCompanionObjectVsLocalClassQualifier.kt") + public void testTopLevelCompanionObjectVsLocalClassQualifier() throws Exception { + runTest("idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassQualifier.kt"); + } + + @TestMetadata("TopLevelObjectVsLocalClassConstructor.kt") + public void testTopLevelObjectVsLocalClassConstructor() throws Exception { + runTest("idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor.kt"); + } + + @TestMetadata("TopLevelObjectVsLocalClassConstructor2.kt") + public void testTopLevelObjectVsLocalClassConstructor2() throws Exception { + runTest("idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor2.kt"); + } + + @TestMetadata("TopLevelObjectVsLocalClassConstructor3.kt") + public void testTopLevelObjectVsLocalClassConstructor3() throws Exception { + runTest("idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor3.kt"); + } + + @TestMetadata("TopLevelObjectVsLocalClassQualifier.kt") + public void testTopLevelObjectVsLocalClassQualifier() throws Exception { + runTest("idea/testData/resolve/references/TopLevelObjectVsLocalClassQualifier.kt"); + } + @TestMetadata("TypeAlias.kt") public void testTypeAlias() throws Exception { runTest("idea/testData/resolve/references/TypeAlias.kt"); diff --git a/idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor.kt b/idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor.kt new file mode 100644 index 00000000000..15f38f51657 --- /dev/null +++ b/idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor.kt @@ -0,0 +1,11 @@ +package test + +class Conflict + +fun test() { + class Conflict + + Conflict() +} + +// REF: (in test.test).Conflict \ No newline at end of file diff --git a/idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor2.kt b/idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor2.kt new file mode 100644 index 00000000000..82b0f111520 --- /dev/null +++ b/idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor2.kt @@ -0,0 +1,11 @@ +package test + +class Conflict + +fun test() { + class Conflict(i: Int) + + Conflict() +} + +// REF: (test).Conflict \ No newline at end of file diff --git a/idea/testData/resolve/references/TopLevelClassVsLocalClassQualifier.kt b/idea/testData/resolve/references/TopLevelClassVsLocalClassQualifier.kt new file mode 100644 index 00000000000..7c59f471bc4 --- /dev/null +++ b/idea/testData/resolve/references/TopLevelClassVsLocalClassQualifier.kt @@ -0,0 +1,13 @@ +// IGNORE_FIR + +package test + +class Conflict + +fun test() { + class Conflict + + Conflict +} + +// REF: (in test.test).Conflict \ No newline at end of file diff --git a/idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor.kt b/idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor.kt new file mode 100644 index 00000000000..3627509ac7c --- /dev/null +++ b/idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor.kt @@ -0,0 +1,15 @@ +// IGNORE_FIR + +package test + +class Conflict { + companion object +} + +fun test() { + class Conflict + + Conflict +} + +// REF: companion object of (test).Conflict \ No newline at end of file diff --git a/idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor2.kt b/idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor2.kt new file mode 100644 index 00000000000..7808a5350ff --- /dev/null +++ b/idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor2.kt @@ -0,0 +1,15 @@ +package test + +class Conflict(i: Int) { + companion object { + operator fun invoke() {} + } +} + +fun test() { + class Conflict + + Conflict() +} + +// REF: (in test.test).Conflict \ No newline at end of file diff --git a/idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassQualifier.kt b/idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassQualifier.kt new file mode 100644 index 00000000000..06d5a7c0074 --- /dev/null +++ b/idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassQualifier.kt @@ -0,0 +1,13 @@ +package test + +class Conflict { + companion object +} + +fun test() { + class Conflict + + Conflict() +} + +// REF: (in test.test).Conflict \ No newline at end of file diff --git a/idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor.kt b/idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor.kt new file mode 100644 index 00000000000..a2d44fe887c --- /dev/null +++ b/idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor.kt @@ -0,0 +1,11 @@ +package test + +object Conflict + +fun test() { + class Conflict + + Conflict() +} + +// REF: (in test.test).Conflict \ No newline at end of file diff --git a/idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor2.kt b/idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor2.kt new file mode 100644 index 00000000000..6f88bb7f09a --- /dev/null +++ b/idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor2.kt @@ -0,0 +1,13 @@ +package test + +object Conflict { + operator fun invoke() {} +} + +fun test() { + class Conflict + + Conflict() +} + +// REF: (in test.test).Conflict \ No newline at end of file diff --git a/idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor3.kt b/idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor3.kt new file mode 100644 index 00000000000..933b3cce461 --- /dev/null +++ b/idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor3.kt @@ -0,0 +1,15 @@ +// IGNORE_FIR + +package test + +object Conflict { + operator fun invoke() {} +} + +fun test() { + class Conflict(i: Int) + + Conflict() +} + +// REF: (test).Conflict \ No newline at end of file diff --git a/idea/testData/resolve/references/TopLevelObjectVsLocalClassQualifier.kt b/idea/testData/resolve/references/TopLevelObjectVsLocalClassQualifier.kt new file mode 100644 index 00000000000..8567aa99d58 --- /dev/null +++ b/idea/testData/resolve/references/TopLevelObjectVsLocalClassQualifier.kt @@ -0,0 +1,11 @@ +package test + +object Conflict + +fun test() { + class Conflict + + Conflict +} + +// REF: (test).Conflict \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/resolve/ReferenceResolveTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/resolve/ReferenceResolveTestGenerated.java index 22c4ccf8944..134d3da6298 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/resolve/ReferenceResolveTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/resolve/ReferenceResolveTestGenerated.java @@ -369,6 +369,56 @@ public class ReferenceResolveTestGenerated extends AbstractReferenceResolveTest runTest("idea/testData/resolve/references/SyntheticProperty.kt"); } + @TestMetadata("TopLevelClassVsLocalClassConstructor.kt") + public void testTopLevelClassVsLocalClassConstructor() throws Exception { + runTest("idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor.kt"); + } + + @TestMetadata("TopLevelClassVsLocalClassConstructor2.kt") + public void testTopLevelClassVsLocalClassConstructor2() throws Exception { + runTest("idea/testData/resolve/references/TopLevelClassVsLocalClassConstructor2.kt"); + } + + @TestMetadata("TopLevelClassVsLocalClassQualifier.kt") + public void testTopLevelClassVsLocalClassQualifier() throws Exception { + runTest("idea/testData/resolve/references/TopLevelClassVsLocalClassQualifier.kt"); + } + + @TestMetadata("TopLevelCompanionObjectVsLocalClassConstructor.kt") + public void testTopLevelCompanionObjectVsLocalClassConstructor() throws Exception { + runTest("idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor.kt"); + } + + @TestMetadata("TopLevelCompanionObjectVsLocalClassConstructor2.kt") + public void testTopLevelCompanionObjectVsLocalClassConstructor2() throws Exception { + runTest("idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassConstructor2.kt"); + } + + @TestMetadata("TopLevelCompanionObjectVsLocalClassQualifier.kt") + public void testTopLevelCompanionObjectVsLocalClassQualifier() throws Exception { + runTest("idea/testData/resolve/references/TopLevelCompanionObjectVsLocalClassQualifier.kt"); + } + + @TestMetadata("TopLevelObjectVsLocalClassConstructor.kt") + public void testTopLevelObjectVsLocalClassConstructor() throws Exception { + runTest("idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor.kt"); + } + + @TestMetadata("TopLevelObjectVsLocalClassConstructor2.kt") + public void testTopLevelObjectVsLocalClassConstructor2() throws Exception { + runTest("idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor2.kt"); + } + + @TestMetadata("TopLevelObjectVsLocalClassConstructor3.kt") + public void testTopLevelObjectVsLocalClassConstructor3() throws Exception { + runTest("idea/testData/resolve/references/TopLevelObjectVsLocalClassConstructor3.kt"); + } + + @TestMetadata("TopLevelObjectVsLocalClassQualifier.kt") + public void testTopLevelObjectVsLocalClassQualifier() throws Exception { + runTest("idea/testData/resolve/references/TopLevelObjectVsLocalClassQualifier.kt"); + } + @TestMetadata("TypeAlias.kt") public void testTypeAlias() throws Exception { runTest("idea/testData/resolve/references/TypeAlias.kt"); -- GitLab