aboutsummaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-11-13 21:37:50 +0000
committerMichael Williamson <mike@zwobble.org>2016-11-13 21:39:16 +0000
commit34cb98fb564d82e185103c85ead8443a7d551c6b (patch)
tree1883ca00e04dce6b11511bdd18954ac3afa4d777 /src/test
parent6f87042576150fd65db52144417d8a788f2441f4 (diff)
Allow default namespace when parsing XML
Diffstat (limited to 'src/test')
-rw-r--r--src/test/java/org/zwobble/mammoth/tests/xml/XmlParserTests.java27
1 files changed, 18 insertions, 9 deletions
diff --git a/src/test/java/org/zwobble/mammoth/tests/xml/XmlParserTests.java b/src/test/java/org/zwobble/mammoth/tests/xml/XmlParserTests.java
index 30b7c28..072482e 100644
--- a/src/test/java/org/zwobble/mammoth/tests/xml/XmlParserTests.java
+++ b/src/test/java/org/zwobble/mammoth/tests/xml/XmlParserTests.java
@@ -21,7 +21,7 @@ import static org.zwobble.mammoth.internal.util.Maps.map;
public class XmlParserTests {
private final XmlParser parser = new XmlParser(new NamespacePrefixes(map()));
-
+
@Test
public void canParseSelfClosingElement() {
assertThat(
@@ -31,21 +31,21 @@ public class XmlParserTests {
parser.parseString("<values/>"),
isElement("values"));
}
-
+
@Test
public void canParseEmptyElementWithSeparateClosingTag() {
assertThat(
parser.parseString("<body></body>"),
isElement("body"));
}
-
+
@Test
public void canParseAttributesOfTag() {
assertThat(
parser.parseString("<body name='bob'></body>"),
isElement("body", map("name", "bob")));
}
-
+
@Test
public void canParseElementWithDescendantElements() {
assertThat(
@@ -63,21 +63,21 @@ public class XmlParserTests {
isElement("body", map(), list(
isTextNode("Hello!"))));
}
-
+
@Test
public void unmappedNamespaceUrisInElementNamesAreIncludedInBracesAsPrefix() {
assertThat(
parser.parseString("<w:body xmlns:w='word'/>"),
isElement("{word}body"));
}
-
+
@Test
public void unmappedNamespaceUrisInAttributeNamesAreIncludedInBracesAsPrefix() {
assertThat(
parser.parseString("<body xmlns:w='word' w:name='bob'></body>"),
isElement("body", map("{word}name", "bob")));
}
-
+
@Test
public void mappedNamespaceUrisInElementNamesArePrefixedToLocalNameWithColon() {
XmlParser parser = new XmlParser(NamespacePrefixes.builder().put("x", "word").build());
@@ -85,7 +85,7 @@ public class XmlParserTests {
parser.parseString("<w:body xmlns:w='word'/>"),
isElement("x:body"));
}
-
+
@Test
public void mappedNamespaceUrisInAttributeNamesArePrefixedToLocalNameWithColon() {
XmlParser parser = new XmlParser(NamespacePrefixes.builder().put("x", "word").build());
@@ -93,7 +93,16 @@ public class XmlParserTests {
parser.parseString("<body xmlns:w='word' w:name='bob'/>"),
isElement("body", map("x:name", "bob")));
}
-
+
+ @Test
+ public void elementsWithDefaultNamespaceHaveNoPrefix() {
+ XmlParser parser = new XmlParser(NamespacePrefixes.builder().defaultPrefix("word").build());
+ assertThat(
+ parser.parseString("<w:body xmlns:w='word'/>"),
+ isElement("body")
+ );
+ }
+
@Test
public void canParseInputStream() {
assertThat(