diff options
author | arseny.kapoulkine <arseny.kapoulkine@99668b35-9821-0410-8761-19e4c4f06640> | 2009-11-08 16:15:05 +0000 |
---|---|---|
committer | arseny.kapoulkine <arseny.kapoulkine@99668b35-9821-0410-8761-19e4c4f06640> | 2009-11-08 16:15:05 +0000 |
commit | f02208b12f774c2c32a0ba7d92bfb8a7b527169e (patch) | |
tree | bc81bac7a48cfc80dbbf0c166f8306aa674c8aea | |
parent | c1b2ecc79902ea89bb9a0296f2d3ddcb7591800a (diff) |
tests: Final coverage improvements
git-svn-id: http://pugixml.googlecode.com/svn/trunk@229 99668b35-9821-0410-8761-19e4c4f06640
-rw-r--r-- | tests/test_xpath_parse.cpp | 7 | ||||
-rw-r--r-- | tests/test_xpath_paths.cpp | 11 |
2 files changed, 13 insertions, 5 deletions
diff --git a/tests/test_xpath_parse.cpp b/tests/test_xpath_parse.cpp index 38032ea..8eee552 100644 --- a/tests/test_xpath_parse.cpp +++ b/tests/test_xpath_parse.cpp @@ -48,6 +48,7 @@ TEST(xpath_empty_expression) TEST(xpath_lexer_error)
{
CHECK_XPATH_FAIL("!");
+ CHECK_XPATH_FAIL("&");
}
TEST(xpath_unmatched_braces)
@@ -65,6 +66,12 @@ TEST(xpath_incorrect_step) {
CHECK_XPATH_FAIL("child::1");
CHECK_XPATH_FAIL("something::*");
+ CHECK_XPATH_FAIL("a::*");
+ CHECK_XPATH_FAIL("c::*");
+ CHECK_XPATH_FAIL("d::*");
+ CHECK_XPATH_FAIL("f::*");
+ CHECK_XPATH_FAIL("n::*");
+ CHECK_XPATH_FAIL("p::*");
}
TEST(xpath_semantics_error)
diff --git a/tests/test_xpath_paths.cpp b/tests/test_xpath_paths.cpp index 3d45e9c..d64fdc6 100644 --- a/tests/test_xpath_paths.cpp +++ b/tests/test_xpath_paths.cpp @@ -90,7 +90,7 @@ TEST_XML(xpath_paths_axes_preceding_sibling, "<node attr1='value' attr2='value'> CHECK_XPATH_NODESET(n, "@attr2/following-sibling:: node()"); // attributes are not siblings
}
-TEST_XML(xpath_paths_axes_following, "<node attr1='value' attr2='value'><child attr='value'><subchild/></child><another><subchild/></another><last/></node>")
+TEST_XML(xpath_paths_axes_following, "<node attr1='value' attr2='value'><child attr='value'><subchild/></child><another><subchild/></another><almost/><last/></node>")
{
doc.precompute_document_order();
@@ -100,12 +100,12 @@ TEST_XML(xpath_paths_axes_following, "<node attr1='value' attr2='value'><child a CHECK_XPATH_NODESET(c, "following:: node()");
CHECK_XPATH_NODESET(n, "following:: node()"); // no descendants
- CHECK_XPATH_NODESET(n.child("child"), "following:: node()") % 8 % 9 % 10; // another, subchild, last
- CHECK_XPATH_NODESET(n.child("child").child("subchild"), "following:: node()") % 8 % 9 % 10; // another, subchild, last
+ CHECK_XPATH_NODESET(n.child("child"), "following:: node()") % 8 % 9 % 10 % 11; // another, subchild, almost, last
+ CHECK_XPATH_NODESET(n.child("child").child("subchild"), "following:: node()") % 8 % 9 % 10 % 11; // another, subchild, almost, last
CHECK_XPATH_NODESET(n.child("last"), "following:: node()");
}
-TEST_XML(xpath_paths_axes_preceding, "<node attr1='value' attr2='value'><child attr='value'><subchild/></child><another><subchild/></another><last/></node>")
+TEST_XML(xpath_paths_axes_preceding, "<node attr1='value' attr2='value'><child attr='value'><subchild/></child><another><subchild/></another><almost/><last/></node>")
{
doc.precompute_document_order();
@@ -115,7 +115,7 @@ TEST_XML(xpath_paths_axes_preceding, "<node attr1='value' attr2='value'><child a CHECK_XPATH_NODESET(c, "preceding:: node()");
CHECK_XPATH_NODESET(n.child("child"), "preceding:: node()"); // no ancestors
- CHECK_XPATH_NODESET(n.child("last"), "preceding:: node()") % 9 % 8 % 7 % 5; // subchild, another, subchild, child
+ CHECK_XPATH_NODESET(n.child("last"), "preceding:: node()") % 10 % 9 % 8 % 7 % 5; // almost, subchild, another, subchild, child
CHECK_XPATH_NODESET(n.child("another").child("subchild"), "preceding:: node()") % 7 % 5; // subchild, child
CHECK_XPATH_NODESET(n, "preceding:: node()");
}
@@ -154,6 +154,7 @@ TEST_XML(xpath_paths_axes_self, "<node attr='value'><child attr='value'><subchil CHECK_XPATH_NODESET(n.child("child"), "self:: node()") % 4; // child
CHECK_XPATH_NODESET(n, "self:: node()") % 2; // node
+ CHECK_XPATH_NODESET(n, "child/self:: node()") % 4; // child
CHECK_XPATH_NODESET(n, "child/@attr/self:: node()") % 5; // @attr
CHECK_XPATH_NODESET(doc, "self:: node()") % 1; // root
}
|