diff --git a/plugins/kotlin/code-insight/inspections-k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/inspections/PackageDirectoryMismatchInspection.kt b/plugins/kotlin/code-insight/inspections-k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/inspections/PackageDirectoryMismatchInspection.kt index 585a73fe334c..ab1bc2c172cb 100644 --- a/plugins/kotlin/code-insight/inspections-k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/inspections/PackageDirectoryMismatchInspection.kt +++ b/plugins/kotlin/code-insight/inspections-k2/src/org/jetbrains/kotlin/idea/k2/codeinsight/inspections/PackageDirectoryMismatchInspection.kt @@ -69,7 +69,7 @@ class PackageDirectoryMismatchInspection : AbstractKotlinInspection() { fixes += ChangePackageFix("'${fqNameWithImplicitPrefix.asString()}'", fqNameWithImplicitPrefix) } - val element = if (directive.textLength != 0) directive else (file.declarations.firstOrNull() ?: file) + val element = if (directive.textLength != 0) directive else file holder.registerProblem( element, KotlinBundle.message("text.package.directive.dont.match.file.location"), diff --git a/plugins/kotlin/code-insight/inspections-k2/tests/test/org/jetbrains/kotlin/idea/k2/inspections/tests/K2MultiFileInspectionTestGenerated.java b/plugins/kotlin/code-insight/inspections-k2/tests/test/org/jetbrains/kotlin/idea/k2/inspections/tests/K2MultiFileInspectionTestGenerated.java index 399744f81e91..cefe12f23269 100644 --- a/plugins/kotlin/code-insight/inspections-k2/tests/test/org/jetbrains/kotlin/idea/k2/inspections/tests/K2MultiFileInspectionTestGenerated.java +++ b/plugins/kotlin/code-insight/inspections-k2/tests/test/org/jetbrains/kotlin/idea/k2/inspections/tests/K2MultiFileInspectionTestGenerated.java @@ -94,23 +94,4 @@ public abstract class K2MultiFileInspectionTestGenerated extends AbstractK2Multi runTest("../../../idea/tests/testData/multiFileInspections/kotlinSealedInJavaTest/kotlinSealedInJavaTest.test"); } } - - @RunWith(JUnit3RunnerWithInners.class) - @TestMetadata("../../../idea/tests/testData/multiFileInspections/mismatchedProjectAndDirectoryRoot") - public static class MismatchedProjectAndDirectoryRoot extends AbstractK2MultiFileInspectionTest { - @java.lang.Override - @org.jetbrains.annotations.NotNull - public final KotlinPluginMode getPluginMode() { - return KotlinPluginMode.K2; - } - - private void runTest(String testDataFilePath) throws Exception { - KotlinTestUtils.runTest(this::doTest, this, testDataFilePath); - } - - @TestMetadata("mismatchedProjectAndDirectoryRoot.test") - public void testMismatchedProjectAndDirectoryRoot() throws Exception { - runTest("../../../idea/tests/testData/multiFileInspections/mismatchedProjectAndDirectoryRoot/mismatchedProjectAndDirectoryRoot.test"); - } - } } diff --git a/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/K2HighlightingMetaInfoTestGenerated.java b/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/K2HighlightingMetaInfoTestGenerated.java index 72e37e902d55..9974364a3f10 100644 --- a/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/K2HighlightingMetaInfoTestGenerated.java +++ b/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/K2HighlightingMetaInfoTestGenerated.java @@ -615,6 +615,11 @@ public abstract class K2HighlightingMetaInfoTestGenerated extends AbstractK2High runTest("../../idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblem.kt"); } + @TestMetadata("mismatchPackageDirectoryFileLevelProblemDeclarations.kt") + public void testMismatchPackageDirectoryFileLevelProblemDeclarations() throws Exception { + runTest("../../idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt"); + } + @TestMetadata("NamedArguments.kt") public void testNamedArguments() throws Exception { runTest("../../idea/tests/testData/highlighterMetaInfo/NamedArguments.kt"); diff --git a/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/CommonNativeJvmK2HighlightingMetaInfoTestGenerated.java b/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/CommonNativeJvmK2HighlightingMetaInfoTestGenerated.java index 819534efbe0f..8f8ce54199fa 100644 --- a/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/CommonNativeJvmK2HighlightingMetaInfoTestGenerated.java +++ b/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/CommonNativeJvmK2HighlightingMetaInfoTestGenerated.java @@ -336,6 +336,11 @@ public abstract class CommonNativeJvmK2HighlightingMetaInfoTestGenerated extends runTest("../../idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblem.kt"); } + @TestMetadata("mismatchPackageDirectoryFileLevelProblemDeclarations.kt") + public void testMismatchPackageDirectoryFileLevelProblemDeclarations() throws Exception { + runTest("../../idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt"); + } + @TestMetadata("NamedArguments.kt") public void testNamedArguments() throws Exception { runTest("../../idea/tests/testData/highlighterMetaInfo/NamedArguments.kt"); diff --git a/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/JsK2HighlightingMetaInfoTestGenerated.java b/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/JsK2HighlightingMetaInfoTestGenerated.java index 4ee1fa34e2ec..28c9410a86fb 100644 --- a/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/JsK2HighlightingMetaInfoTestGenerated.java +++ b/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/JsK2HighlightingMetaInfoTestGenerated.java @@ -336,6 +336,11 @@ public abstract class JsK2HighlightingMetaInfoTestGenerated extends AbstractK2Hi runTest("../../idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblem.kt"); } + @TestMetadata("mismatchPackageDirectoryFileLevelProblemDeclarations.kt") + public void testMismatchPackageDirectoryFileLevelProblemDeclarations() throws Exception { + runTest("../../idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt"); + } + @TestMetadata("NamedArguments.kt") public void testNamedArguments() throws Exception { runTest("../../idea/tests/testData/highlighterMetaInfo/NamedArguments.kt"); diff --git a/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/NativeLinuxK2HighlightingMetaInfoTestGenerated.java b/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/NativeLinuxK2HighlightingMetaInfoTestGenerated.java index ece353bd96ac..c025dcad4dbe 100644 --- a/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/NativeLinuxK2HighlightingMetaInfoTestGenerated.java +++ b/plugins/kotlin/highlighting/highlighting-k2/test/org/jetbrains/kotlin/idea/k2/highlighting/metaInfoKmp/NativeLinuxK2HighlightingMetaInfoTestGenerated.java @@ -336,6 +336,11 @@ public abstract class NativeLinuxK2HighlightingMetaInfoTestGenerated extends Abs runTest("../../idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblem.kt"); } + @TestMetadata("mismatchPackageDirectoryFileLevelProblemDeclarations.kt") + public void testMismatchPackageDirectoryFileLevelProblemDeclarations() throws Exception { + runTest("../../idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt"); + } + @TestMetadata("NamedArguments.kt") public void testNamedArguments() throws Exception { runTest("../../idea/tests/testData/highlighterMetaInfo/NamedArguments.kt"); diff --git a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/highlighter/K1HighlightingMetaInfoTestGenerated.java b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/highlighter/K1HighlightingMetaInfoTestGenerated.java index db6d69e08157..86b3e42cc1eb 100644 --- a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/highlighter/K1HighlightingMetaInfoTestGenerated.java +++ b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/idea/highlighter/K1HighlightingMetaInfoTestGenerated.java @@ -620,6 +620,11 @@ public abstract class K1HighlightingMetaInfoTestGenerated extends AbstractK1High runTest("testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblem.kt"); } + @TestMetadata("mismatchPackageDirectoryFileLevelProblemDeclarations.kt") + public void testMismatchPackageDirectoryFileLevelProblemDeclarations() throws Exception { + runTest("testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt"); + } + @TestMetadata("NamedArguments.kt") public void testNamedArguments() throws Exception { runTest("testData/highlighterMetaInfo/NamedArguments.kt"); diff --git a/plugins/kotlin/idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt b/plugins/kotlin/idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt new file mode 100644 index 000000000000..41b78cb8e299 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt @@ -0,0 +1,11 @@ +fun foo() { + // TODO + // TODO + // TODO + // TODO +} +// TOOL: org.jetbrains.kotlin.idea.k2.codeinsight.inspections.PackageDirectoryMismatchInspection +// IGNORE_K1 +// IMPLICIT_PACKAGE_PREFIX: "foo" +// HIGHLIGHT_WARNINGS +// ALLOW_ERRORS diff --git a/plugins/kotlin/idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt.highlighting b/plugins/kotlin/idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt.highlighting new file mode 100644 index 000000000000..41b78cb8e299 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt.highlighting @@ -0,0 +1,11 @@ +fun foo() { + // TODO + // TODO + // TODO + // TODO +} +// TOOL: org.jetbrains.kotlin.idea.k2.codeinsight.inspections.PackageDirectoryMismatchInspection +// IGNORE_K1 +// IMPLICIT_PACKAGE_PREFIX: "foo" +// HIGHLIGHT_WARNINGS +// ALLOW_ERRORS diff --git a/plugins/kotlin/idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt.highlighting.k2 b/plugins/kotlin/idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt.highlighting.k2 new file mode 100644 index 000000000000..eae8c78fc973 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt.highlighting.k2 @@ -0,0 +1,11 @@ +fun foo() { + // TODO + // TODO + // TODO + // TODO +} +// TOOL: org.jetbrains.kotlin.idea.k2.codeinsight.inspections.PackageDirectoryMismatchInspection +// IGNORE_K1 +// IMPLICIT_PACKAGE_PREFIX: "foo" +// HIGHLIGHT_WARNINGS +// ALLOW_ERRORS diff --git a/plugins/kotlin/idea/tests/testData/multiFileInspections/mismatchedProjectAndDirectoryRoot/mismatchedProjectAndDirectoryRoot.test b/plugins/kotlin/idea/tests/testData/multiFileInspections/mismatchedProjectAndDirectoryRoot/mismatchedProjectAndDirectoryRoot.test index 266803a47543..3ac2faa69dcb 100644 --- a/plugins/kotlin/idea/tests/testData/multiFileInspections/mismatchedProjectAndDirectoryRoot/mismatchedProjectAndDirectoryRoot.test +++ b/plugins/kotlin/idea/tests/testData/multiFileInspections/mismatchedProjectAndDirectoryRoot/mismatchedProjectAndDirectoryRoot.test @@ -1,4 +1,3 @@ { - "inspectionClass": "org.jetbrains.kotlin.idea.refactoring.move.changePackage.PackageDirectoryMismatchInspection", - "k2InspectionClass": "org.jetbrains.kotlin.idea.k2.codeinsight.inspections.PackageDirectoryMismatchInspection" + "inspectionClass": "org.jetbrains.kotlin.idea.refactoring.move.changePackage.PackageDirectoryMismatchInspection" } \ No newline at end of file diff --git a/plugins/kotlin/util/test-generator-fir/test/org/jetbrains/kotlin/fir/testGenerator/codeinsight/GenerateK2InspectionTests.kt b/plugins/kotlin/util/test-generator-fir/test/org/jetbrains/kotlin/fir/testGenerator/codeinsight/GenerateK2InspectionTests.kt index 382cb92c07a0..dbe66ecca0dc 100644 --- a/plugins/kotlin/util/test-generator-fir/test/org/jetbrains/kotlin/fir/testGenerator/codeinsight/GenerateK2InspectionTests.kt +++ b/plugins/kotlin/util/test-generator-fir/test/org/jetbrains/kotlin/fir/testGenerator/codeinsight/GenerateK2InspectionTests.kt @@ -193,7 +193,8 @@ internal fun MutableTWorkspace.generateK2InspectionTests() { model("${idea}/multiFileInspections/mismatchedPackageDirectory", pattern = Patterns.TEST) model("${idea}/multiFileInspections/mismatchedProjectAndDirectory", pattern = Patterns.TEST) model("${idea}/multiFileInspections/kotlinSealedInJavaTest", pattern = Patterns.TEST) - model("${idea}/multiFileInspections/mismatchedProjectAndDirectoryRoot", pattern = Patterns.TEST) + // K2 test data intentionally slightly differs from K1 + //model("${idea}/multiFileInspections/mismatchedProjectAndDirectoryRoot", pattern = Patterns.TEST) } testClass {