diff options
author | Willem Jan Palenstijn <wjp@usecode.org> | 2015-05-08 14:12:53 +0200 |
---|---|---|
committer | Willem Jan Palenstijn <wjp@usecode.org> | 2015-05-08 14:12:53 +0200 |
commit | 99f46882982b92c632869053ae0dd416312b02ff (patch) | |
tree | 539252314daa42411d053e926134b289a750f14c /tests | |
parent | 63307fca7a82bfea7592d9c8d3a359333e622495 (diff) | |
parent | fff7470f1d74b0085355130350fa834ea8d37069 (diff) | |
download | astra-99f46882982b92c632869053ae0dd416312b02ff.tar.gz astra-99f46882982b92c632869053ae0dd416312b02ff.tar.bz2 astra-99f46882982b92c632869053ae0dd416312b02ff.tar.xz astra-99f46882982b92c632869053ae0dd416312b02ff.zip |
Merge pull request #61 from wjp/xmlnode_cleanup
Clean up XMLNode
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_XMLDocument.cpp | 68 |
1 files changed, 38 insertions, 30 deletions
diff --git a/tests/test_XMLDocument.cpp b/tests/test_XMLDocument.cpp index adabdd6..18e880d 100644 --- a/tests/test_XMLDocument.cpp +++ b/tests/test_XMLDocument.cpp @@ -32,18 +32,19 @@ $Id$ #include <boost/test/auto_unit_test.hpp> #include "astra/XMLDocument.h" +#include "astra/Config.h" BOOST_AUTO_TEST_CASE( testXMLDocument_Constructor1 ) { astra::XMLDocument *doc = astra::XMLDocument::createDocument("test"); BOOST_REQUIRE(doc); - astra::XMLNode *root = doc->getRootNode(); + astra::XMLNode root = doc->getRootNode(); BOOST_REQUIRE(root); - BOOST_CHECK(root->getName() == "test"); - BOOST_CHECK(root->getContent().empty()); + BOOST_CHECK(root.getName() == "test"); + BOOST_CHECK(root.getContent().empty()); } BOOST_AUTO_TEST_CASE( testXMLDocument_FileIO ) @@ -53,12 +54,12 @@ BOOST_AUTO_TEST_CASE( testXMLDocument_FileIO ) doc->saveToFile("test.xml"); astra::XMLDocument *doc2 = astra::XMLDocument::readFromFile("test.xml"); - astra::XMLNode *root = doc2->getRootNode(); + astra::XMLNode root = doc2->getRootNode(); BOOST_REQUIRE(root); - BOOST_CHECK(root->getName() == "test"); - BOOST_CHECK(root->getContent().empty()); + BOOST_CHECK(root.getName() == "test"); + BOOST_CHECK(root.getContent().empty()); } @@ -67,32 +68,28 @@ BOOST_AUTO_TEST_CASE( testXMLDocument_CreateNodes ) astra::XMLDocument *doc = astra::XMLDocument::createDocument("test"); BOOST_REQUIRE(doc); - astra::XMLNode *root = doc->getRootNode(); + astra::XMLNode root = doc->getRootNode(); BOOST_REQUIRE(root); - astra::XMLNode *node = root->addChildNode("child"); + astra::XMLNode node = root.addChildNode("child"); BOOST_REQUIRE(node); - node->addAttribute("attr", "val"); + node.addAttribute("attr", "val"); doc->saveToFile("test2.xml"); - delete node; - delete root; delete doc; doc = astra::XMLDocument::readFromFile("test2.xml"); BOOST_REQUIRE(doc); root = doc->getRootNode(); BOOST_REQUIRE(node); - node = root->getSingleNode("child"); + node = root.getSingleNode("child"); BOOST_REQUIRE(node); - BOOST_CHECK(node->hasAttribute("attr")); - BOOST_CHECK(node->getAttribute("attr") == "val"); + BOOST_CHECK(node.hasAttribute("attr")); + BOOST_CHECK(node.getAttribute("attr") == "val"); - delete node; - delete root; delete doc; } @@ -101,16 +98,16 @@ BOOST_AUTO_TEST_CASE( testXMLDocument_Options ) astra::XMLDocument *doc = astra::XMLDocument::createDocument("test"); BOOST_REQUIRE(doc); - astra::XMLNode *root = doc->getRootNode(); + astra::XMLNode root = doc->getRootNode(); BOOST_REQUIRE(root); - BOOST_CHECK(!root->hasOption("opt")); + BOOST_CHECK(!root.hasOption("opt")); - root->addOption("opt", "val"); + root.addOption("opt", "val"); - BOOST_CHECK(root->hasOption("opt")); + BOOST_CHECK(root.hasOption("opt")); - BOOST_CHECK(root->getOption("opt") == "val"); + BOOST_CHECK(root.getOption("opt") == "val"); } @@ -119,40 +116,51 @@ BOOST_AUTO_TEST_CASE( testXMLDocument_List ) astra::XMLDocument *doc = astra::XMLDocument::createDocument("test"); BOOST_REQUIRE(doc); - astra::XMLNode *root = doc->getRootNode(); + astra::XMLNode root = doc->getRootNode(); BOOST_REQUIRE(root); - astra::XMLNode *node = root->addChildNode("child"); + astra::XMLNode node = root.addChildNode("child"); BOOST_REQUIRE(node); float fl[] = { 1.0, 3.5, 2.0, 4.75 }; - node->setContent(fl, sizeof(fl)/sizeof(fl[0])); + node.setContent(fl, sizeof(fl)/sizeof(fl[0])); doc->saveToFile("test3.xml"); - delete node; - delete root; delete doc; doc = astra::XMLDocument::readFromFile("test3.xml"); BOOST_REQUIRE(doc); root = doc->getRootNode(); BOOST_REQUIRE(root); - node = root->getSingleNode("child"); + node = root.getSingleNode("child"); BOOST_REQUIRE(node); - std::vector<astra::float32> f = node->getContentNumericalArray(); + std::vector<astra::float32> f = node.getContentNumericalArray(); BOOST_CHECK(f[0] == fl[0]); BOOST_CHECK(f[1] == fl[1]); BOOST_CHECK(f[2] == fl[2]); BOOST_CHECK(f[3] == fl[3]); - delete node; - delete root; delete doc; } +BOOST_AUTO_TEST_CASE( testXMLDocument_Config ) +{ + astra::Config* cfg = new astra::Config(); + cfg->initialize("VolumeGeometry2D"); + + cfg->self.addChildNode("GridColCount", 1); + cfg->self.addChildNode("GridRowCount", 2); + + cfg->self.addOption("WindowMinX", 3); + cfg->self.addOption("WindowMaxX", 4); + cfg->self.addOption("WindowMinY", 5); + cfg->self.addOption("WindowMaxY", 6); + + delete cfg; +} |