1 19 package org.netbeans.modules.xml.schema.completion; 20 21 import java.util.List ; 22 import junit.framework.*; 23 import javax.swing.text.Document ; 24 import org.openide.filesystems.FileObject; 25 26 30 public class BasicCompletionTest extends AbstractTestCase { 31 32 static final String PO_INSTANCE_DOCUMENT = "resources/PO.xml"; 33 static final String TEST_INSTANCE_DOCUMENT = "resources/Test.xml"; 34 35 public BasicCompletionTest(String testName) { 36 super(testName); 37 } 38 39 public static Test suite() { 40 TestSuite suite = new TestSuite(BasicCompletionTest.class); 41 return suite; 42 } 43 44 47 public void testPurchaseOrder() throws Exception { 48 StringBuffer buffer = new StringBuffer (); 49 buffer.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"); buffer.append("<po:purchaseOrder xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"); buffer.append(" xmlns:po=\"http://xml.netbeans.org/schema/PO\"\n"); buffer.append(" xsi:schemaLocation=\"http://xml.netbeans.org/schema/PO PO.xsd\">\n"); buffer.append(" <\n"); 54 buffer.append("</po:purchaseOrder>\n"); 55 setupCompletion(PO_INSTANCE_DOCUMENT, buffer); 56 List <CompletionResultItem> items = query(227); 57 String [] expectedResult = {"po:shipTo", "po:billTo", "po:comment", "po:items"}; 58 assertResult(items, expectedResult); 59 } 60 61 64 public void testEmptyTag() throws Exception { 65 StringBuffer buffer = new StringBuffer (); 66 buffer.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"); buffer.append("<A:rootA3 xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"); buffer.append(" xmlns:A=\"http://xml.netbeans.org/schema/TNSA\"\n"); buffer.append(" xsi:schemaLocation=\"http://xml.netbeans.org/schema/TNSA A.xsd\">\n"); 70 buffer.append(" <A31 />\n"); 71 buffer.append("</A:rootA3>\n"); 72 setupCompletion(TEST_INSTANCE_DOCUMENT, buffer); 73 List <CompletionResultItem> items = query(226); 74 String [] expectedResult = {"attrA31", "attrA32"}; 75 assertResult(items, expectedResult); 76 } 77 78 public void testWildcard1() throws Exception { 79 StringBuffer buffer = new StringBuffer (); 80 buffer.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"); buffer.append("<A:rootA1 xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"); buffer.append(" xmlns:A=\"http://xml.netbeans.org/schema/TNSA\"\n"); buffer.append(" xsi:schemaLocation=\"http://xml.netbeans.org/schema/TNSA A.xsd\">\n"); 84 buffer.append(" <\n"); 85 buffer.append("</A:rootA1>\n"); 86 setupCompletion(TEST_INSTANCE_DOCUMENT, buffer); 87 List <CompletionResultItem> items = query(222); 88 String [] expectedResult = {"A:rootA1", "A:rootA2", "A:rootA3", "A:A11", "A:A12"}; 89 assertResult(items, expectedResult); 90 } 91 92 public void testWildcard2() throws Exception { 93 StringBuffer buffer = new StringBuffer (); 94 buffer.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"); buffer.append("<A:rootA1 xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"); buffer.append(" xmlns:A=\"http://xml.netbeans.org/schema/TNSA\"\n"); buffer.append(" xsi:schemaLocation=\"http://xml.netbeans.org/schema/TNSA A.xsd\n"); 98 buffer.append(" http://xml.netbeans.org/schema/TNSB B.xsd\">\n"); 99 buffer.append(" <\n"); 100 buffer.append("</A:rootA1>\n"); 101 setupCompletion(TEST_INSTANCE_DOCUMENT, buffer); 102 List <CompletionResultItem> items = query(265); 103 String [] expectedResult = {"ns1:rootB1", "ns1:rootB2", "A:rootA1", "A:rootA2", 104 "A:rootA3", "A:A11", "A:A12"}; 105 assertResult(items, expectedResult); 106 } 107 108 public void testWildcard3() throws Exception { 109 StringBuffer buffer = new StringBuffer (); 110 buffer.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"); buffer.append("<A:rootA1 xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"); buffer.append(" xmlns:A=\"http://xml.netbeans.org/schema/TNSA\"\n"); buffer.append(" xmlns:B=\"http://xml.netbeans.org/schema/TNSB\"\n"); buffer.append(" xmlns:C=\"http://xml.netbeans.org/schema/TNSC\"\n"); buffer.append(" xsi:schemaLocation=\"http://xml.netbeans.org/schema/TNSA A.xsd\n"); buffer.append(" http://xml.netbeans.org/schema/TNSB B.xsd\n"); buffer.append(" http://xml.netbeans.org/schema/TNSC C.xsd\">\n"); buffer.append(" <\n"); buffer.append("</A:rootA1>\n"); 120 setupCompletion(TEST_INSTANCE_DOCUMENT, buffer); 121 List <CompletionResultItem> items = query(405); 122 String [] expectedResult = {"C:rootC1", "C:rootC1","B:rootB1", "B:rootB2", 123 "A:rootA1", "A:rootA2", "A:rootA3", "A:A11", "A:A12"}; 124 assertResult(items, expectedResult); 125 } 126 127 public void testWildcard4() throws Exception { 128 StringBuffer buffer = new StringBuffer (); 129 buffer.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"); buffer.append("<A:rootA2 xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"); buffer.append(" xmlns:A=\"http://xml.netbeans.org/schema/TNSA\"\n"); buffer.append(" xmlns:B=\"http://xml.netbeans.org/schema/TNSB\"\n"); buffer.append(" xmlns:C=\"http://xml.netbeans.org/schema/TNSC\"\n"); buffer.append(" xsi:schemaLocation=\"http://xml.netbeans.org/schema/TNSA A.xsd\n"); buffer.append(" http://xml.netbeans.org/schema/TNSB B.xsd\n"); buffer.append(" http://xml.netbeans.org/schema/TNSC C.xsd\">\n"); buffer.append(" <\n"); buffer.append("</A:rootA2>\n"); 139 setupCompletion(TEST_INSTANCE_DOCUMENT, buffer); 140 List <CompletionResultItem> items = query(405); 141 String [] expectedResult = {"C:rootC1", "C:rootC1","B:rootB1", "B:rootB2", "A:rootA1", 142 "A:rootA2", "A:rootA3", "A:rootA3", "A:A21", "A:A22"}; 143 assertResult(items, expectedResult); 144 } 145 } 146 | Popular Tags |