summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorBenjamin Paassen <bpaassen@techfak.uni-bielefeld.de>2015-04-09 11:33:34 +0200
committerAndreas Stöckel <astoecke@techfak.uni-bielefeld.de>2016-04-25 22:19:34 +0200
commit3ad6d09b82f9b3c4118b3264b1a013384c81e3c2 (patch)
treec46f1c2498cd92b55070be4e2459ca757afba897 /test
parent1a2e47eefee90fea2779ec3551f214c572fcc7f9 (diff)
added test for empty explicit fields, which currently fails.
Diffstat (limited to 'test')
-rw-r--r--test/formats/osxml/OsxmlParserTest.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/test/formats/osxml/OsxmlParserTest.cpp b/test/formats/osxml/OsxmlParserTest.cpp
index 603d6c1..7c7f2a8 100644
--- a/test/formats/osxml/OsxmlParserTest.cpp
+++ b/test/formats/osxml/OsxmlParserTest.cpp
@@ -384,5 +384,22 @@ TEST(OsxmlParser, documentParsing)
}
}
+TEST(OsxmlParser, emptyNamedField){
+ logger.reset();
+ XmlStandaloneEnvironment env(logger);
+ Rooted<Node> book_document_node =
+ env.parse("empty_named_field.osxml", "", "", RttiSet{&RttiTypes::Document});
+ ASSERT_FALSE(logger.hasError());
+ ASSERT_FALSE(book_document_node == nullptr);
+ ASSERT_TRUE(book_document_node->isa(&RttiTypes::Document));
+ // check the document content.
+ Rooted<Document> doc = book_document_node.cast<Document>();
+ ASSERT_TRUE(doc->validate(logger));
+ checkStructuredEntity(doc->getRoot(), doc, doc, "a");
+ ASSERT_EQ(2U, doc->getRoot()->getDescriptor()->getFieldDescriptors().size());
+ ASSERT_TRUE(doc->getRoot()->getField(0).empty());
+ ASSERT_TRUE(doc->getRoot()->getField(1).empty());
+}
+
}