diff options
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/util/DOMElementWriterTest.java')
-rw-r--r-- | framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/util/DOMElementWriterTest.java | 305 |
1 files changed, 0 insertions, 305 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/util/DOMElementWriterTest.java b/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/util/DOMElementWriterTest.java deleted file mode 100644 index fe09ce93..00000000 --- a/framework/src/ant/apache-ant-1.9.6/src/tests/junit/org/apache/tools/ant/util/DOMElementWriterTest.java +++ /dev/null @@ -1,305 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -package org.apache.tools.ant.util; - -import org.junit.Test; -import org.w3c.dom.Document; -import org.w3c.dom.Element; - -import java.io.IOException; -import java.io.StringWriter; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - -/** - * Tests for org.apache.tools.ant.util.DOMElementWriter. - * - */ -public class DOMElementWriterTest { - - private DOMElementWriter w = new DOMElementWriter(); - - @Test - public void testIsReference() { - assertTrue("", w.isReference("")); - assertTrue(" ", w.isReference(" ")); - assertTrue(" ", w.isReference(" ")); - assertTrue("&#A0;", !w.isReference("&#A0;")); - assertTrue("20;", !w.isReference("20;")); - assertTrue("", !w.isReference("")); - assertTrue(""", w.isReference(""")); - assertTrue("'", w.isReference("'")); - assertTrue(">", w.isReference(">")); - assertTrue("<", w.isReference("<")); - assertTrue("&", w.isReference("&")); - } - - @Test - public void testEncode() { - assertEquals("&#20;", w.encode("")); - assertEquals("&#x20;", w.encode(" ")); - assertEquals("&#xA0;", w.encode(" ")); - assertEquals("&#A0;", w.encode("&#A0;")); - assertEquals("20;", w.encode("20;")); - assertEquals("&#20", w.encode("")); - assertEquals("&quot;", w.encode(""")); - assertEquals("&apos;", w.encode("'")); - assertEquals("&gt;", w.encode(">")); - assertEquals("&lt;", w.encode("<")); - assertEquals("&amp;", w.encode("&")); - assertEquals(""", w.encode("\"")); - assertEquals("<", w.encode("<")); - assertEquals("&", w.encode("&")); - assertEquals("", w.encode("\u0017")); - assertEquals("\r\n\t", w.encode("\r\n\t")); - } - - @Test - 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")); - } - - @Test - 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()); - } - - @Test - public void testEncodeData() { - assertEquals("\"20;&", w.encodedata("\"20;&")); - assertEquals("", w.encodedata("\u0017")); - } - - @Test - public void testIsLegalCharacter() { - assertTrue("0x00", !w.isLegalCharacter('\u0000')); - assertTrue("0x09", w.isLegalCharacter('\t')); - assertTrue("0x0A", w.isLegalCharacter('\n')); - assertTrue("0x0C", w.isLegalCharacter('\r')); - assertTrue("0x1F", !w.isLegalCharacter('\u001F')); - assertTrue("0x20", w.isLegalCharacter('\u0020')); - assertTrue("0xD7FF", w.isLegalCharacter('\uD7FF')); - assertTrue("0xD800", !w.isLegalCharacter('\uD800')); - assertTrue("0xDFFF", !w.isLegalCharacter('\uDFFF')); - assertTrue("0xE000", w.isLegalCharacter('\uE000')); - assertTrue("0xFFFD", w.isLegalCharacter('\uFFFD')); - assertTrue("0xFFFE", !w.isLegalCharacter('\uFFFE')); - } - - @Test - public void testCDATAEndEncoding() { - assertEquals("]>", w.encodedata("]>")); - assertEquals("]]", w.encodedata("]]")); - assertEquals("]]]]><![CDATA[>", w.encodedata("]]>")); - assertEquals("]]]]><![CDATA[>A", w.encodedata("]]>A")); - assertEquals("A]]]]><![CDATA[>", w.encodedata("A]]>")); - assertEquals("A]]]]><![CDATA[>A", w.encodedata("A]]>A")); - assertEquals("A]]]]><![CDATA[>B]]]]><![CDATA[>C", - w.encodedata("A]]>B]]>C")); - } - - @Test - public void testNoAdditionalWhiteSpaceForText() throws IOException { - Document d = DOMUtils.newDocument(); - Element root = d.createElement("root"); - DOMUtils.appendTextElement(root, "textElement", "content"); - - StringWriter sw = new StringWriter(); - DOMElementWriter w = new DOMElementWriter(); - w.write(root, sw, 0, " "); - assertEquals("<root>" + StringUtils.LINE_SEP - + " <textElement>content</textElement>" - + StringUtils.LINE_SEP - + "</root>" + StringUtils.LINE_SEP, - sw.toString()); - } - - @Test - public void testNoAdditionalWhiteSpaceForCDATA() throws IOException { - Document d = DOMUtils.newDocument(); - Element root = d.createElement("root"); - DOMUtils.appendCDATAElement(root, "cdataElement", "content"); - - StringWriter sw = new StringWriter(); - DOMElementWriter w = new DOMElementWriter(); - w.write(root, sw, 0, " "); - assertEquals("<root>" + StringUtils.LINE_SEP - + " <cdataElement><![CDATA[content]]></cdataElement>" - + StringUtils.LINE_SEP - + "</root>" + StringUtils.LINE_SEP, - sw.toString()); - } - - @Test - public void testNoAdditionalWhiteSpaceForEmptyElement() throws IOException { - Document d = DOMUtils.newDocument(); - Element root = d.createElement("root"); - DOMUtils.createChildElement(root, "emptyElement"); - - StringWriter sw = new StringWriter(); - DOMElementWriter w = new DOMElementWriter(); - w.write(root, sw, 0, " "); - assertEquals("<root>" + StringUtils.LINE_SEP - // + " <emptyElement></emptyElement>" - + " <emptyElement />" - + StringUtils.LINE_SEP - + "</root>" + StringUtils.LINE_SEP, - sw.toString()); - } - - @Test - public void testNoNSPrefixByDefault() throws IOException { - Document d = DOMUtils.newDocument(); - Element root = d.createElementNS("urn:foo", "root"); - root.setAttributeNS("urn:foo2", "bar", "baz"); - - StringWriter sw = new StringWriter(); - DOMElementWriter w = new DOMElementWriter(); - w.write(root, sw, 0, " "); - assertEquals("<root bar=\"baz\" />" - + StringUtils.LINE_SEP, sw.toString()); - } - - @Test - public void testNSOnElement() throws IOException { - Document d = DOMUtils.newDocument(); - Element root = d.createElementNS("urn:foo", "root"); - root.setAttributeNS("urn:foo2", "bar", "baz"); - - StringWriter sw = new StringWriter(); - DOMElementWriter w = - new DOMElementWriter(false, - DOMElementWriter.XmlNamespacePolicy - .ONLY_QUALIFY_ELEMENTS); - w.write(root, sw, 0, " "); - assertEquals("<root bar=\"baz\" xmlns=\"urn:foo\" />" - + StringUtils.LINE_SEP, sw.toString()); - } - - @Test - public void testNSPrefixOnAttribute() throws IOException { - Document d = DOMUtils.newDocument(); - Element root = d.createElementNS("urn:foo", "root"); - root.setAttributeNS("urn:foo2", "bar", "baz"); - - StringWriter sw = new StringWriter(); - DOMElementWriter w = - new DOMElementWriter(false, - DOMElementWriter.XmlNamespacePolicy - .QUALIFY_ALL); - w.write(root, sw, 0, " "); - assertEquals("<root ns0:bar=\"baz\" xmlns=\"urn:foo\"" - + " xmlns:ns0=\"urn:foo2\" />" - + StringUtils.LINE_SEP, sw.toString()); - } - - @Test - public void testNSPrefixOnAttributeEvenWithoutElement() throws IOException { - Document d = DOMUtils.newDocument(); - Element root = d.createElementNS("urn:foo", "root"); - root.setAttributeNS("urn:foo2", "bar", "baz"); - - StringWriter sw = new StringWriter(); - DOMElementWriter w = - new DOMElementWriter(false, - new DOMElementWriter.XmlNamespacePolicy(false, - true) - ); - w.write(root, sw, 0, " "); - assertEquals("<root ns0:bar=\"baz\" xmlns:ns0=\"urn:foo2\" />" - + StringUtils.LINE_SEP, sw.toString()); - } - - @Test - public void testNSGetsReused() throws IOException { - Document d = DOMUtils.newDocument(); - Element root = d.createElementNS("urn:foo", "root"); - Element child = d.createElementNS("urn:foo", "child"); - root.appendChild(child); - StringWriter sw = new StringWriter(); - DOMElementWriter w = - new DOMElementWriter(false, - DOMElementWriter.XmlNamespacePolicy - .ONLY_QUALIFY_ELEMENTS); - w.write(root, sw, 0, " "); - assertEquals("<root xmlns=\"urn:foo\">" - + StringUtils.LINE_SEP - + " <child />" - + StringUtils.LINE_SEP - + "</root>" - + StringUtils.LINE_SEP, sw.toString()); - } - - @Test - public void testNSGoesOutOfScope() throws IOException { - Document d = DOMUtils.newDocument(); - Element root = d.createElementNS("urn:foo", "root"); - Element child = d.createElementNS("urn:foo2", "child"); - root.appendChild(child); - Element child2 = d.createElementNS("urn:foo2", "child"); - root.appendChild(child2); - Element grandChild = d.createElementNS("urn:foo2", "grandchild"); - child2.appendChild(grandChild); - Element child3 = d.createElementNS("urn:foo2", "child"); - root.appendChild(child3); - StringWriter sw = new StringWriter(); - DOMElementWriter w = - new DOMElementWriter(false, - DOMElementWriter.XmlNamespacePolicy - .ONLY_QUALIFY_ELEMENTS); - w.write(root, sw, 0, " "); - assertEquals("<root xmlns=\"urn:foo\">" - + StringUtils.LINE_SEP - + " <ns0:child xmlns:ns0=\"urn:foo2\" />" - + StringUtils.LINE_SEP - + " <ns1:child xmlns:ns1=\"urn:foo2\">" - + StringUtils.LINE_SEP - + " <ns1:grandchild />" - + StringUtils.LINE_SEP - + " </ns1:child>" - + StringUtils.LINE_SEP - + " <ns2:child xmlns:ns2=\"urn:foo2\" />" - + StringUtils.LINE_SEP - + "</root>" - + StringUtils.LINE_SEP, sw.toString()); - } -} |