From b6433db22642307330311c42fffb6950287415df Mon Sep 17 00:00:00 2001 From: "arseny.kapoulkine" Date: Sun, 11 Oct 2009 10:24:12 +0000 Subject: tests: Initial tree modification tests git-svn-id: http://pugixml.googlecode.com/svn/trunk@148 99668b35-9821-0410-8761-19e4c4f06640 --- tests/test_dom_modify.cpp | 63 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 tests/test_dom_modify.cpp (limited to 'tests/test_dom_modify.cpp') diff --git a/tests/test_dom_modify.cpp b/tests/test_dom_modify.cpp new file mode 100644 index 0000000..b775d2d --- /dev/null +++ b/tests/test_dom_modify.cpp @@ -0,0 +1,63 @@ +#include "common.hpp" + +TEST_XML(dom_attr_assign, "") +{ + xml_node node = doc.child("node"); + + node.attribute("attr1") = "v1"; + xml_attribute() = "v1"; + + node.attribute("attr2") = -2147483647 - 1; + xml_attribute() = -2147483647 - 1; + + node.attribute("attr3") = 2147483647u; + xml_attribute() = 2147483647; + + node.attribute("attr4") = 0.5; + xml_attribute() = 0.5; + + node.attribute("attr5") = true; + xml_attribute() = true; + + CHECK_NODE(node, ""); +} + +TEST_XML(dom_attr_set_value, "") +{ + xml_node node = doc.child("node"); + + CHECK(node.attribute("attr1").set_value("v1")); + CHECK(!xml_attribute().set_value("v1")); + + CHECK(node.attribute("attr2").set_value(-2147483647 - 1)); + CHECK(!xml_attribute().set_value(-2147483647 - 1)); + + CHECK(node.attribute("attr3").set_value(2147483647u)); + CHECK(!xml_attribute().set_value(2147483647)); + + CHECK(node.attribute("attr4").set_value(0.5)); + CHECK(!xml_attribute().set_value(0.5)); + + CHECK(node.attribute("attr5").set_value(true)); + CHECK(!xml_attribute().set_value(true)); + + CHECK_NODE(node, ""); +} + +TEST_XML(dom_node_set_name, "text") +{ + CHECK(doc.child("node").set_name("n")); + CHECK(!doc.child("node").first_child().set_name("n")); + CHECK(!xml_node().set_name("n")); + + CHECK_NODE(doc, "text"); +} + +TEST_XML(dom_node_set_value, "text") +{ + CHECK(doc.child("node").first_child().set_value("no text")); + CHECK(!doc.child("node").set_value("no text")); + CHECK(!xml_node().set_value("no text")); + + CHECK_NODE(doc, "no text"); +} -- cgit v1.2.3