summaryrefslogtreecommitdiff
path: root/xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java')
-rw-r--r--xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java34
1 files changed, 34 insertions, 0 deletions
diff --git a/xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java b/xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java
index d1e5463e6c3d..574942bc1207 100644
--- a/xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java
+++ b/xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java
@@ -18,6 +18,8 @@ import com.intellij.psi.statistics.impl.StatisticsManagerImpl;
import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase;
import com.intellij.xml.util.XmlUtil;
+import java.util.List;
+
/**
* @by Maxim.Mossienko
*/
@@ -612,5 +614,37 @@ public class XmlCompletionTest extends LightCodeInsightFixtureTestCase {
configureByFiles("foo.xsd", "bar.xsd");
basicDoTest("");
}
+
+ public void testDoNotSuggestExistingAttributes() throws Exception {
+ myFixture.configureByFile("DoNotSuggestExistingAttributes.xml");
+ myFixture.completeBasic();
+ List<String> strings = myFixture.getLookupElementStrings();
+ assertNotNull(strings);
+ assertFalse(strings.contains("xsi:schemaLocation"));
+ assertSameElements(strings, "attributeFormDefault",
+ "blockDefault",
+ "elementFormDefault",
+ "finalDefault",
+ "id",
+ "targetNamespace",
+ "version",
+ "xml:base",
+ "xml:id",
+ "xml:lang",
+ "xml:space",
+ "xsi:nill",
+ "xsi:noNamespaceSchemaLocation",
+ "xsi:type");
+ }
+
+ public void testRequiredAttributesOnTop() throws Exception {
+ myFixture.configureByText("foo.html", "<img <caret>");
+ myFixture.completeBasic();
+ List<String> strings = myFixture.getLookupElementStrings();
+ assertNotNull(strings);
+ assertEquals("alt", strings.get(0));
+ assertEquals("src", strings.get(1));
+ assertEquals("align", strings.get(2));
+ }
}