|
|
@@ -68,6 +68,40 @@ public class DOMElementWriterTest extends TestCase { |
|
|
|
assertEquals("<", w.encode("<")); |
|
|
|
assertEquals("&", w.encode("&")); |
|
|
|
assertEquals("", w.encode("\u0017")); |
|
|
|
assertEquals("\r\n\t", w.encode("\r\n\t")); |
|
|
|
} |
|
|
|
|
|
|
|
public void testEncodeAttributeValue() { |
|
|
|
assertEquals("&#20;", w.encodeAttributeValue("")); |
|
|
|
assertEquals("&#x20;", w.encodeAttributeValue(" ")); |
|
|
|
assertEquals("&#xA0;", w.encodeAttributeValue(" ")); |
|
|
|
assertEquals("&#A0;", w.encodeAttributeValue("&#A0;")); |
|
|
|
assertEquals("20;", w.encodeAttributeValue("20;")); |
|
|
|
assertEquals("&#20", w.encodeAttributeValue("")); |
|
|
|
assertEquals("&quot;", w.encodeAttributeValue(""")); |
|
|
|
assertEquals("&apos;", w.encodeAttributeValue("'")); |
|
|
|
assertEquals("&gt;", w.encodeAttributeValue(">")); |
|
|
|
assertEquals("&lt;", w.encodeAttributeValue("<")); |
|
|
|
assertEquals("&amp;", w.encodeAttributeValue("&")); |
|
|
|
assertEquals(""", w.encodeAttributeValue("\"")); |
|
|
|
assertEquals("<", w.encodeAttributeValue("<")); |
|
|
|
assertEquals("&", w.encodeAttributeValue("&")); |
|
|
|
assertEquals("", w.encodeAttributeValue("\u0017")); |
|
|
|
assertEquals("
	", w.encodeAttributeValue("\r\n\t")); |
|
|
|
} |
|
|
|
|
|
|
|
public void testAttributeWithWhitespace() throws IOException { |
|
|
|
Document d = DOMUtils.newDocument(); |
|
|
|
Element root = d.createElement("root"); |
|
|
|
root.setAttribute("foo", "bar\nbaz"); |
|
|
|
StringWriter sw = new StringWriter(); |
|
|
|
DOMElementWriter w = new DOMElementWriter(); |
|
|
|
w.write(root, sw, 0, " "); |
|
|
|
assertEquals("<root foo=\"bar
baz\" />" + StringUtils.LINE_SEP, |
|
|
|
sw.toString()); |
|
|
|
} |
|
|
|
|
|
|
|
public void testEncodeData() { |
|
|
|
assertEquals("\"20;&", w.encodedata("\"20;&")); |
|
|
|
assertEquals("", w.encodedata("\u0017")); |
|
|
|
} |
|
|
|