diff options
| author | Carl Hetherington <cth@carlh.net> | 2014-12-28 00:45:03 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2014-12-28 00:45:03 +0000 |
| commit | 8520636e803e9eb17c9f73272f340d0e1c17ad67 (patch) | |
| tree | 9aaa1abf9ebeb3b1cc9170e9f94323373c85be82 /test/text_test.cc | |
| parent | fbb6e0e4d5731a2de6820bcb6ee57252ddd772fa (diff) | |
More tests.
Diffstat (limited to 'test/text_test.cc')
| -rw-r--r-- | test/text_test.cc | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/test/text_test.cc b/test/text_test.cc new file mode 100644 index 00000000..55cb20c1 --- /dev/null +++ b/test/text_test.cc @@ -0,0 +1,53 @@ +/* + Copyright (C) 2014 Carl Hetherington <cth@carlh.net> + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + +#include "text.h" +#include <libcxml/cxml.h> +#include <libxml++/libxml++.h> +#include <boost/test/unit_test.hpp> + +/** Simple test of Text class parsing some XML */ +BOOST_AUTO_TEST_CASE (text_test1) +{ + xmlpp::Document doc; + xmlpp::Element* text = doc.create_root_node("Text"); + text->set_attribute("VPosition", "4.2"); + text->set_attribute("VAlign", "top"); + text->add_child_text("Hello world"); + + dcp::Text t (cxml::NodePtr (new cxml::Node (text))); + BOOST_CHECK_CLOSE (t.v_position, 4.2, 0.001); + BOOST_CHECK_EQUAL (t.v_align, dcp::TOP); + BOOST_CHECK_EQUAL (t.text, "Hello world"); +} + +/** Similar to text_test1 but with different capitalisation of attribute names */ +BOOST_AUTO_TEST_CASE (text_test2) +{ + xmlpp::Document doc; + xmlpp::Element* text = doc.create_root_node("Text"); + text->set_attribute("Vposition", "4.2"); + text->set_attribute("Valign", "top"); + text->add_child_text("Hello world"); + + dcp::Text t (cxml::NodePtr (new cxml::Node (text))); + BOOST_CHECK_CLOSE (t.v_position, 4.2, 0.001); + BOOST_CHECK_EQUAL (t.v_align, dcp::TOP); + BOOST_CHECK_EQUAL (t.text, "Hello world"); +} |
