diff options
author | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2015-03-03 20:38:32 +0100 |
---|---|---|
committer | Andreas Stöckel <andreas@somweyr.de> | 2015-03-03 20:38:32 +0100 |
commit | e9f726d2f8108104d86e967dd27bba1fbe493b19 (patch) | |
tree | e0bf6412eecfe43b883b253748664e60c76f2cee /test | |
parent | ec758436a01903ded6ec5951fa1fc5d2fe062239 (diff) |
added more complex tests and prevented endless loops in DocumentChildHandler::startAnnotation
Diffstat (limited to 'test')
-rw-r--r-- | test/formats/osml/OsmlParserTest.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/formats/osml/OsmlParserTest.cpp b/test/formats/osml/OsmlParserTest.cpp index 1c8894d..cc711b4 100644 --- a/test/formats/osml/OsmlParserTest.cpp +++ b/test/formats/osml/OsmlParserTest.cpp @@ -212,6 +212,31 @@ TEST(OsmlParser, simpleAnnotation) ASSERT_TRUE(node->isa(&RttiTypes::Document)); } +TEST(OsmlParser, overlappingAnnotations) +{ + OsmlStandaloneEnvironment env(logger); + logger.reset(); + + Rooted<Node> node = env.parse("overlapping_annotations.osml", "", "", + RttiSet{&RttiTypes::Node}); + ASSERT_FALSE(logger.hasError()); + + ASSERT_TRUE(node != nullptr); + ASSERT_TRUE(node->isa(&RttiTypes::Document)); +} + +TEST(OsmlParser, errorAnnotationBoundaries) +{ + OsmlStandaloneEnvironment env(logger); + logger.reset(); + + Rooted<Node> node = env.parse("error_annotation_boundaries.osml", "", "", + RttiSet{&RttiTypes::Node}); + ASSERT_TRUE(logger.hasError()); + + ASSERT_TRUE(node != nullptr); + ASSERT_TRUE(node->isa(&RttiTypes::Document)); +} } |