diff options
author | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2015-02-18 11:32:23 +0100 |
---|---|---|
committer | Andreas Stöckel <andreas@somweyr.de> | 2015-02-18 11:32:23 +0100 |
commit | 2de08643afdb4771ef8d1f6dd836ded20db244cf (patch) | |
tree | ee34807cb0d29d41666afa46c183188c697080db /test/formats | |
parent | d76cf800ea9a61ff3860636707558802c00da401 (diff) |
Fix for issue #85 -- only allowing explicit fields if no structure elements or data have been given beforehand. Added unit tests.
Diffstat (limited to 'test/formats')
-rw-r--r-- | test/formats/osml/OsmlParserTest.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/test/formats/osml/OsmlParserTest.cpp b/test/formats/osml/OsmlParserTest.cpp index 4cda20a..5127b32 100644 --- a/test/formats/osml/OsmlParserTest.cpp +++ b/test/formats/osml/OsmlParserTest.cpp @@ -172,5 +172,32 @@ TEST(OsmlParser, structWithNoField) ASSERT_TRUE(node->isa(&RttiTypes::Document)); } +TEST(OsmlParser, invalidExplicitFields) +{ + OsmlStandaloneEnvironment env(logger); + logger.reset(); + + ASSERT_FALSE(logger.hasError()); + Rooted<Node> node = env.parse("invalid_explicit_fields.osml", "", "", + RttiSet{&RttiTypes::Node}); + ASSERT_TRUE(logger.hasError()); + + ASSERT_TRUE(node != nullptr); + ASSERT_TRUE(node->isa(&RttiTypes::Document)); +} + +TEST(OsmlParser, explicitFields) +{ + OsmlStandaloneEnvironment env(logger); + logger.reset(); + + Rooted<Node> node = env.parse("explicit_fields.osml", "", "", + RttiSet{&RttiTypes::Node}); + ASSERT_FALSE(logger.hasError()); + + ASSERT_TRUE(node != nullptr); + ASSERT_TRUE(node->isa(&RttiTypes::Document)); +} + } |