summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/test_dom_traverse.cpp28
-rw-r--r--tests/test_xpath.cpp6
2 files changed, 28 insertions, 6 deletions
diff --git a/tests/test_dom_traverse.cpp b/tests/test_dom_traverse.cpp
index 18d59a4..71402c5 100644
--- a/tests/test_dom_traverse.cpp
+++ b/tests/test_dom_traverse.cpp
@@ -757,3 +757,31 @@ TEST_XML_FLAGS(dom_offset_debug, "<?xml?><?pi?><!--comment--><node>pcdata<![CDAT
CHECK((cit++)->offset_debug() == 33);
CHECK((cit++)->offset_debug() == 48);
}
+
+TEST_XML(dom_document_order, "<node attr='value'>value</node>")
+{
+ xml_node node = doc.child(STR("node"));
+ xml_attribute attr = node.first_attribute();
+ xml_node value = node.first_child();
+
+ CHECK(xml_node().document_order() == 0);
+ CHECK(xml_attribute().document_order() == 0);
+
+ CHECK(doc.document_order() == 0);
+ CHECK(node.document_order() != 0 && attr.document_order() != 0 && value.document_order() != 0);
+
+ CHECK(node.document_order() < attr.document_order() && attr.document_order() < value.document_order());
+
+ attr.set_name(STR("newattr"));
+ CHECK(attr.document_order() != 0);
+ CHECK(node.document_order() < attr.document_order() && attr.document_order() < value.document_order());
+
+ attr.set_value(STR("newvalue"));
+ CHECK(attr.document_order() == 0);
+
+ node.set_name(STR("newnode"));
+ CHECK(node.document_order() == 0);
+
+ value.set_value(STR("newvalue"));
+ CHECK(value.document_order() == 0);
+}
diff --git a/tests/test_xpath.cpp b/tests/test_xpath.cpp
index a2e8200..d8ebcb6 100644
--- a/tests/test_xpath.cpp
+++ b/tests/test_xpath.cpp
@@ -263,12 +263,6 @@ TEST(xpath_miscellaneous)
CHECK_XPATH_NODESET(xml_node(), STR("foo/@FOO/@bar"));
}
-TEST(xpath_document_order)
-{
- CHECK(xml_attribute().document_order() == 0);
- CHECK(xml_node().document_order() == 0);
-}
-
TEST_XML(xpath_context_node, "<node>5</node>")
{
CHECK_XPATH_NODESET(doc, STR("node")) % 2;