diff --git a/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/inspections/PluginXmlI18nInspectionTest.java b/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/inspections/PluginXmlI18nInspectionTest.java index 9aad0868b266..804d68bbcdff 100644 --- a/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/inspections/PluginXmlI18nInspectionTest.java +++ b/plugins/devkit/devkit-java-tests/testSrc/org/jetbrains/idea/devkit/inspections/PluginXmlI18nInspectionTest.java @@ -1,6 +1,7 @@ // Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package org.jetbrains.idea.devkit.inspections; +import com.intellij.codeInsight.intention.IntentionAction; import com.intellij.codeInspection.LocalInspectionEP; import com.intellij.lang.LanguageExtensionPoint; import com.intellij.openapi.options.Configurable; @@ -10,11 +11,13 @@ import com.intellij.testFramework.builders.JavaModuleFixtureBuilder; import com.intellij.testFramework.fixtures.JavaCodeInsightFixtureTestCase; import com.intellij.ui.components.JBList; import com.intellij.util.PathUtil; +import org.jetbrains.idea.devkit.DevKitBundle; import org.jetbrains.idea.devkit.DevkitJavaTestsUtil; import java.io.File; import java.nio.file.Paths; +@SuppressWarnings("InspectionDescriptionNotFoundInspection") @TestDataPath("$CONTENT_ROOT/testData/inspections/pluginXmlI18n") public class PluginXmlI18nInspectionTest extends JavaCodeInsightFixtureTestCase { @@ -46,6 +49,37 @@ public class PluginXmlI18nInspectionTest extends JavaCodeInsightFixtureTestCase myFixture.testHighlighting("PluginXmlI18nInspection.xml"); } + public void testInspectionFix() { + setupPlatformLibraries202(); + myFixture.addClass("package foo.bar; public class Inspection1 extends com.intellij.codeInspection.LocalInspectionTool { }"); + myFixture.addFileToProject("messages/FooBundle.properties", ""); + + myFixture.configureByText("plugin.xml", "\n" + + " messages.FooBundle" + + " \n" + + " bar\"\n" + + " groupName=\"Group\"\n" + + " enabledByDefault=\"true\"\n" + + " implementationClass=\"foo.bar.Inspection1\"/>\n" + + " \n" + + ""); + IntentionAction action = + myFixture.getAvailableIntention(DevKitBundle.message("inspections.plugin.xml.i18n.inspection.tag.family.name", "displayName")); + assertNotNull(action); + myFixture.launchAction(action); + myFixture.checkResult("\n" + + " messages.FooBundle \n" + + " \n" + + " \n" + + ""); + } + private void setupPlatformLibraries202() { String platformApiJar = PathUtil.getJarPathForClass(JBList.class); File file = new File(platformApiJar);