diff options
Diffstat (limited to 'xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java')
-rw-r--r-- | xml/tests/src/com/intellij/codeInsight/completion/XmlCompletionTest.java | 34 |
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)); + } } |