From a768ece70dbda5fb2462ea53487b76aab0b6cb8c Mon Sep 17 00:00:00 2001 From: Roman Efremov Date: Mon, 23 Oct 2023 17:23:56 +0200 Subject: [PATCH] [Tests] Add tests for other checkers having same problem with ...nested classes marching. ^KT-31636 --- ...CompilerTestFE10TestdataTestGenerated.java | 12 +++++++++ ...sticCompilerFE10TestDataTestGenerated.java | 12 +++++++++ ...DiagnosticsWithLightTreeTestGenerated.java | 12 +++++++++ ...endMPPDiagnosticsWithPsiTestGenerated.java | 12 +++++++++ ...edAnnotationClassViaActualTypeAlias.fir.kt | 20 ++++++++++++++ ...nestedAnnotationClassViaActualTypeAlias.kt | 20 ++++++++++++++ ...tedAnnotationClassViaActualTypeAlias.ll.kt | 20 ++++++++++++++ ...ssWithNestedClassViaActualTypeAlias.fir.kt | 27 +++++++++++++++++++ ...KclassWithNestedClassViaActualTypeAlias.kt | 27 +++++++++++++++++++ ...assWithNestedClassViaActualTypeAlias.ll.kt | 27 +++++++++++++++++++ .../test/runners/DiagnosticTestGenerated.java | 12 +++++++++ 11 files changed, 201 insertions(+) create mode 100644 compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.fir.kt create mode 100644 compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.kt create mode 100644 compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.ll.kt create mode 100644 compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.fir.kt create mode 100644 compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt create mode 100644 compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.ll.kt diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java index 64f5ef55112..fde941751a2 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java @@ -24219,6 +24219,12 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia runTest("compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/kotlinAnaloguesForJavaAnnotations.kt"); } + @Test + @TestMetadata("nestedAnnotationClassViaActualTypeAlias.kt") + public void testNestedAnnotationClassViaActualTypeAlias() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.kt"); + } + @Test @TestMetadata("repeatableNoArg.kt") public void testRepeatableNoArg() throws Exception { @@ -24777,6 +24783,12 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia runTest("compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationArgumentEquality.kt"); } + @Test + @TestMetadata("annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt") + public void testAnnotationDefaultArgKclassWithNestedClassViaActualTypeAlias() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt"); + } + @Test @TestMetadata("annotations.kt") public void testAnnotations() throws Exception { diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java index 0fdd7107711..c6f14603f1c 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java @@ -24219,6 +24219,12 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated runTest("compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/kotlinAnaloguesForJavaAnnotations.kt"); } + @Test + @TestMetadata("nestedAnnotationClassViaActualTypeAlias.kt") + public void testNestedAnnotationClassViaActualTypeAlias() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.kt"); + } + @Test @TestMetadata("repeatableNoArg.kt") public void testRepeatableNoArg() throws Exception { @@ -24777,6 +24783,12 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated runTest("compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationArgumentEquality.kt"); } + @Test + @TestMetadata("annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt") + public void testAnnotationDefaultArgKclassWithNestedClassViaActualTypeAlias() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt"); + } + @Test @TestMetadata("annotations.kt") public void testAnnotations() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java index efa04d685a1..fd0548a7a2b 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated.java @@ -580,6 +580,12 @@ public class FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated extends Abst runTest("compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/kotlinAnaloguesForJavaAnnotations.kt"); } + @Test + @TestMetadata("nestedAnnotationClassViaActualTypeAlias.kt") + public void testNestedAnnotationClassViaActualTypeAlias() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.kt"); + } + @Test @TestMetadata("repeatableNoArg.kt") public void testRepeatableNoArg() throws Exception { @@ -1138,6 +1144,12 @@ public class FirOldFrontendMPPDiagnosticsWithLightTreeTestGenerated extends Abst runTest("compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationArgumentEquality.kt"); } + @Test + @TestMetadata("annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt") + public void testAnnotationDefaultArgKclassWithNestedClassViaActualTypeAlias() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt"); + } + @Test @TestMetadata("annotations.kt") public void testAnnotations() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java index 293d5edbf87..eb2fe39a265 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirOldFrontendMPPDiagnosticsWithPsiTestGenerated.java @@ -580,6 +580,12 @@ public class FirOldFrontendMPPDiagnosticsWithPsiTestGenerated extends AbstractFi runTest("compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/kotlinAnaloguesForJavaAnnotations.kt"); } + @Test + @TestMetadata("nestedAnnotationClassViaActualTypeAlias.kt") + public void testNestedAnnotationClassViaActualTypeAlias() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.kt"); + } + @Test @TestMetadata("repeatableNoArg.kt") public void testRepeatableNoArg() throws Exception { @@ -1138,6 +1144,12 @@ public class FirOldFrontendMPPDiagnosticsWithPsiTestGenerated extends AbstractFi runTest("compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationArgumentEquality.kt"); } + @Test + @TestMetadata("annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt") + public void testAnnotationDefaultArgKclassWithNestedClassViaActualTypeAlias() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt"); + } + @Test @TestMetadata("annotations.kt") public void testAnnotations() throws Exception { diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.fir.kt new file mode 100644 index 00000000000..db95c3efba1 --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.fir.kt @@ -0,0 +1,20 @@ +// MODULE: m1-common +// FILE: common.kt + +expect annotation class Ann() { + annotation class Nested() +} + +@Ann.Nested +expect fun foo() + +// MODULE: m1-jvm()()(m1-common) +// FILE: jvm.kt +annotation class AnnImpl { + annotation class Nested +} + +actual typealias Ann = AnnImpl + +@AnnImpl.Nested +actual fun foo() {} diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.kt b/compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.kt new file mode 100644 index 00000000000..18e1dc79b2d --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.kt @@ -0,0 +1,20 @@ +// MODULE: m1-common +// FILE: common.kt + +expect annotation class Ann() { + annotation class Nested() +} + +@Ann.Nested +expect fun foo() + +// MODULE: m1-jvm()()(m1-common) +// FILE: jvm.kt +annotation class AnnImpl { + annotation class Nested +} + +actual typealias Ann = AnnImpl + +@AnnImpl.Nested +actual fun foo() {} diff --git a/compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.ll.kt b/compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.ll.kt new file mode 100644 index 00000000000..240cd9300df --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.ll.kt @@ -0,0 +1,20 @@ +// MODULE: m1-common +// FILE: common.kt + +expect annotation class Ann() { + annotation class Nested() +} + +@Ann.Nested +expect fun foo() + +// MODULE: m1-jvm()()(m1-common) +// FILE: jvm.kt +annotation class AnnImpl { + annotation class Nested +} + +actual typealias Ann = AnnImpl + +@AnnImpl.Nested +actual fun foo() {} diff --git a/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.fir.kt b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.fir.kt new file mode 100644 index 00000000000..17159c91509 --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.fir.kt @@ -0,0 +1,27 @@ +// MODULE: m1-common +// FILE: common.kt + +import kotlin.reflect.KClass + +expect annotation class Ann( + val p: KClass<*> = Foo.Nested::class +) + +expect class Foo { + class Nested +} + +// MODULE: m2-jvm()()(m1-common) +// FILE: jvm.kt + +import kotlin.reflect.KClass + +class FooImpl { + class Nested +} + +actual typealias Foo = FooImpl + +actual annotation class Ann( + actual val p: KClass<*> = FooImpl.Nested::class +) diff --git a/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt new file mode 100644 index 00000000000..d11dd865c40 --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt @@ -0,0 +1,27 @@ +// MODULE: m1-common +// FILE: common.kt + +import kotlin.reflect.KClass + +expect annotation class Ann( + val p: KClass<*> = Foo.Nested::class +) + +expect class Foo { + class Nested +} + +// MODULE: m2-jvm()()(m1-common) +// FILE: jvm.kt + +import kotlin.reflect.KClass + +class FooImpl { + class Nested +} + +actual typealias Foo = FooImpl + +actual annotation class Ann( + actual val p: KClass<*> = FooImpl.Nested::class +) diff --git a/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.ll.kt b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.ll.kt new file mode 100644 index 00000000000..c5b334d304f --- /dev/null +++ b/compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.ll.kt @@ -0,0 +1,27 @@ +// MODULE: m1-common +// FILE: common.kt + +import kotlin.reflect.KClass + +expect annotation class Ann( + val p: KClass<*> = Foo.Nested::class +) + +expect class Foo { + class Nested +} + +// MODULE: m2-jvm()()(m1-common) +// FILE: jvm.kt + +import kotlin.reflect.KClass + +class FooImpl { + class Nested +} + +actual typealias Foo = FooImpl + +actual annotation class Ann( + actual val p: KClass<*> = FooImpl.Nested::class +) diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java index 60f0b416da0..b913b4bfbd4 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java @@ -24219,6 +24219,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { runTest("compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/kotlinAnaloguesForJavaAnnotations.kt"); } + @Test + @TestMetadata("nestedAnnotationClassViaActualTypeAlias.kt") + public void testNestedAnnotationClassViaActualTypeAlias() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/actualAnnotationsNotMatchExpect/nestedAnnotationClassViaActualTypeAlias.kt"); + } + @Test @TestMetadata("repeatableNoArg.kt") public void testRepeatableNoArg() throws Exception { @@ -24777,6 +24783,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { runTest("compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationArgumentEquality.kt"); } + @Test + @TestMetadata("annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt") + public void testAnnotationDefaultArgKclassWithNestedClassViaActualTypeAlias() throws Exception { + runTest("compiler/testData/diagnostics/tests/multiplatform/defaultArguments/annotationDefaultArgKclassWithNestedClassViaActualTypeAlias.kt"); + } + @Test @TestMetadata("annotations.kt") public void testAnnotations() throws Exception {