1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.betwixt;
19
20 import junit.framework.Test;
21 import junit.framework.TestSuite;
22 import junit.textui.TestRunner;
23
24
25
26
27
28
29 public class TestXMLUtils extends AbstractTestCase {
30
31 public static void main( String[] args ) {
32 TestRunner.run( suite() );
33 }
34
35 public static Test suite() {
36 return new TestSuite(TestXMLUtils.class);
37 }
38
39 public TestXMLUtils(String testName) {
40 super(testName);
41 }
42
43
44
45
46 public void testXMLNameTest() {
47
48 assertEquals("Testing name 'Name<'", false, XMLUtils.isWellFormedXMLName("Name<"));
49 assertEquals("Testing name 'Name>'", false, XMLUtils.isWellFormedXMLName("Name>"));
50 assertEquals("Testing name 'Name''", false, XMLUtils.isWellFormedXMLName("Name'"));
51 assertEquals("Testing name 'Name_:-.'", true, XMLUtils.isWellFormedXMLName("Name_:-."));
52 assertEquals("Testing name '.Name'", false, XMLUtils.isWellFormedXMLName(".Name"));
53 assertEquals("Testing name '-Name'", false, XMLUtils.isWellFormedXMLName("-Name"));
54 assertEquals("Testing name ':Name'", true, XMLUtils.isWellFormedXMLName(":Name"));
55 assertEquals("Testing name '_Name'", true, XMLUtils.isWellFormedXMLName("_Name"));
56 assertEquals("Testing name 'A0123456789Name", true, XMLUtils.isWellFormedXMLName("A0123456789Name"));
57 }
58
59
60 public void testAttributeEscaping() {
61 assertEquals("Escaping: <", "<", XMLUtils.escapeAttributeValue("<"));
62 assertEquals("Escaping: >", ">", XMLUtils.escapeAttributeValue(">"));
63 assertEquals("Escaping: '", "'", XMLUtils.escapeAttributeValue("'"));
64 assertEquals("Escaping: \"", """, XMLUtils.escapeAttributeValue("\""));
65 assertEquals("Escaping: &", "&", XMLUtils.escapeAttributeValue("&"));
66 assertEquals("Escaping: 1<", "1<", XMLUtils.escapeAttributeValue("1<"));
67 assertEquals("Escaping: 1>", "1>", XMLUtils.escapeAttributeValue("1>"));
68 assertEquals("Escaping: 1'", "1'", XMLUtils.escapeAttributeValue("1'"));
69 assertEquals("Escaping: 1\"", "1"", XMLUtils.escapeAttributeValue("1\""));
70 assertEquals("Escaping: 1&", "1&", XMLUtils.escapeAttributeValue("1&"));
71 assertEquals("Escaping: <2", "<2", XMLUtils.escapeAttributeValue("<2"));
72 assertEquals("Escaping: >2", ">2", XMLUtils.escapeAttributeValue(">2"));
73 assertEquals("Escaping: '2", "'2", XMLUtils.escapeAttributeValue("'2"));
74 assertEquals("Escaping: \"2", ""2", XMLUtils.escapeAttributeValue("\"2"));
75 assertEquals("Escaping: &2", "&2", XMLUtils.escapeAttributeValue("&2"));
76 assertEquals("Escaping: a<b", "a<b", XMLUtils.escapeAttributeValue("a<b"));
77 assertEquals("Escaping: a>b", "a>b", XMLUtils.escapeAttributeValue("a>b"));
78 assertEquals("Escaping: a'b", "a'b", XMLUtils.escapeAttributeValue("a'b"));
79 assertEquals("Escaping: a\"b", "a"b", XMLUtils.escapeAttributeValue("a\"b"));
80 assertEquals("Escaping: a&b", "a&b", XMLUtils.escapeAttributeValue("a&b"));
81 assertEquals("Escaping: <<abba", "<<abba", XMLUtils.escapeAttributeValue("<<abba"));
82 assertEquals("Escaping: >>abba", ">>abba", XMLUtils.escapeAttributeValue(">>abba"));
83 assertEquals("Escaping: ''abba", "''abba", XMLUtils.escapeAttributeValue("''abba"));
84 assertEquals("Escaping: \"\"abba", """abba", XMLUtils.escapeAttributeValue("\"\"abba"));
85 assertEquals("Escaping: &&abba", "&&abba", XMLUtils.escapeAttributeValue("&&abba"));
86 assertEquals(
87 "Escaping: a<>b''c\"e>f'&g",
88 "a<>b''c"e>f'&g",
89 XMLUtils.escapeAttributeValue("a<>b''c\"e>f'&g"));
90
91 }
92
93
94
95
96
97
98
99 public void testCDATAEscaping() {
100 assertEquals("Escaping: <", "<", XMLUtils.escapeCDATAContent("<"));
101 assertEquals("Escaping: >", ">", XMLUtils.escapeCDATAContent(">"));
102 assertEquals("Escaping: '", "'", XMLUtils.escapeCDATAContent("'"));
103 assertEquals("Escaping: \"", "\"", XMLUtils.escapeCDATAContent("\""));
104 assertEquals("Escaping: &", "&", XMLUtils.escapeCDATAContent("&"));
105 assertEquals("Escaping: ]]", "]]", XMLUtils.escapeCDATAContent("]]"));
106 assertEquals("Escaping: ]>", "]>", XMLUtils.escapeCDATAContent("]>"));
107 assertEquals("Escaping: ]]>", "]]>", XMLUtils.escapeCDATAContent("]]>"));
108 assertEquals("Escaping: ]]>]]>", "]]>]]>", XMLUtils.escapeCDATAContent("]]>]]>"));
109 assertEquals("Escaping: ]>]]>", "]>]]>", XMLUtils.escapeCDATAContent("]>]]>"));
110 assertEquals("Escaping: ]]>]]]>", "]]>]]]>", XMLUtils.escapeCDATAContent("]]>]]]>"));
111 assertEquals("Escaping: ", "", XMLUtils.escapeCDATAContent(""));
112 }
113
114
115 }
116