added test for deprecated extension attributes highlighting in plugin.xml files

This commit is contained in:
nik
2011-08-17 09:29:47 +04:00
parent 0a069fd707
commit 7589bc4acf
3 changed files with 33 additions and 3 deletions
@@ -0,0 +1,8 @@
public class MyExtBean {
@java.lang.Deprecated
@com.intellij.util.xmlb.annotations.Attribute("old")
public String myOld;
@com.intellij.util.xmlb.annotations.Attribute("attr")
public String myAttr;
}
@@ -0,0 +1,12 @@
<idea-plugin>
<id>com.intellij.myPlugin</id>
<extensionPoints>
<extensionPoint name="myExt" beanClass="MyExtBean"/>
</extensionPoints>
<extensions defaultExtensionNs="com.intellij.myPlugin">
<myExt <warning descr="'myOld' is deprecated">old</warning>="java.lang.Runnable" attr="value"/>
</extensions>
</idea-plugin>
@@ -28,6 +28,7 @@ import com.intellij.testFramework.fixtures.JavaCodeInsightFixtureTestCase;
import com.intellij.testFramework.fixtures.TempDirTestFixture;
import com.intellij.usageView.UsageViewNodeTextLocation;
import com.intellij.usageView.UsageViewTypeLocation;
import com.intellij.util.xml.DeprecatedClassUsageInspection;
import org.jetbrains.idea.devkit.DevKitInspectionToolProvider;
import java.io.IOException;
@@ -65,7 +66,7 @@ public class PluginXmlFunctionalTest extends JavaCodeInsightFixtureTestCase {
" </extensionPoints>\n" +
"</idea-plugin>");
myFixture.configureFromExistingVirtualFile(myFixture.copyFileToProject(getTestName(false) + ".xml", "META-INF/plugin.xml"));
configureByFile();
myFixture.checkHighlighting(false, false, false);
}
@@ -79,12 +80,16 @@ public class PluginXmlFunctionalTest extends JavaCodeInsightFixtureTestCase {
" <id>com.intellij.custom</id>\n" +
"</idea-plugin>");
myFixture.configureFromExistingVirtualFile(myFixture.copyFileToProject(getTestName(false) + ".xml", "META-INF/plugin.xml"));
configureByFile();
myFixture.checkHighlighting(false, false, false);
}
public void testExtensionQualifiedName() throws Throwable {
private void configureByFile() {
myFixture.configureFromExistingVirtualFile(myFixture.copyFileToProject(getTestName(false) + ".xml", "META-INF/plugin.xml"));
}
public void testExtensionQualifiedName() throws Throwable {
configureByFile();
myFixture.checkHighlighting(false, false, false);
}
@@ -130,6 +135,11 @@ public class PluginXmlFunctionalTest extends JavaCodeInsightFixtureTestCase {
myFixture.checkResultByFile(getTestName(false) + "_after.xml");
}
public void testDeprecatedExtensionAttribute() {
myFixture.enableInspections(DeprecatedClassUsageInspection.class);
myFixture.testHighlighting("deprecatedExtensionAttribute.xml", "MyExtBean.java");
}
public void testPluginModule() throws Throwable {
myFixture.testHighlighting("pluginWithModules.xml");
}