From 59177921e8c81c1604e4154503a63190db66989c Mon Sep 17 00:00:00 2001 From: Andreas Stöckel Date: Wed, 3 Dec 2014 00:04:05 +0100 Subject: continued work on XML parser and underlying ParserStack class --- test/core/parser/ParserStackTest.cpp | 14 +++++--------- test/plugins/xml/XmlParserTest.cpp | 36 ++++++++++++++++-------------------- 2 files changed, 21 insertions(+), 29 deletions(-) (limited to 'test') diff --git a/test/core/parser/ParserStackTest.cpp b/test/core/parser/ParserStackTest.cpp index 1f4a4e2..5dab979 100644 --- a/test/core/parser/ParserStackTest.cpp +++ b/test/core/parser/ParserStackTest.cpp @@ -39,28 +39,24 @@ class TestHandler : public Handler { public: using Handler::Handler; - void start(char **attrs) override + void start(const Variant &args) override { startCount++; -// std::cout << this->name << ": start (isChild: " << (this->isChild) << ")" << std::endl; } void end() override { endCount++; -// std::cout << this->name << ": end " << std::endl; } - void data(const char *data, int len) override + void data(const std::string &data, int field) override { dataCount++; -// std::cout << this->name << ": data \"" << std::string{data, static_cast(len)} << "\"" << std::endl; } void child(std::shared_ptr handler) override { childCount++; -// std::cout << this->name << ": has child \"" << handler->name << "\"" << std::endl; } }; @@ -93,7 +89,7 @@ TEST(ParserStack, simpleTest) ASSERT_EQ(STATE_NONE, s.currentState()); s.start("document", nullptr); - s.data("test1", 5); + s.data("test1"); ASSERT_EQ("document", s.currentName()); ASSERT_EQ(STATE_DOCUMENT, s.currentState()); @@ -101,7 +97,7 @@ TEST(ParserStack, simpleTest) ASSERT_EQ(1, dataCount); s.start("body", nullptr); - s.data("test2", 5); + s.data("test2"); ASSERT_EQ("body", s.currentName()); ASSERT_EQ(STATE_BODY, s.currentState()); ASSERT_EQ(2, startCount); @@ -123,7 +119,7 @@ TEST(ParserStack, simpleTest) ASSERT_EQ(STATE_DOCUMENT, s.currentState()); s.start("body", nullptr); - s.data("test3", 5); + s.data("test3"); ASSERT_EQ("body", s.currentName()); ASSERT_EQ(STATE_BODY, s.currentState()); s.end(); diff --git a/test/plugins/xml/XmlParserTest.cpp b/test/plugins/xml/XmlParserTest.cpp index 98a5a34..ecc9438 100644 --- a/test/plugins/xml/XmlParserTest.cpp +++ b/test/plugins/xml/XmlParserTest.cpp @@ -26,26 +26,14 @@ namespace ousia { namespace parser { namespace xml { -struct TestParserContext : public ParserContext { - -private: - Logger log; - Registry r; - Scope s; - -public: - TestParserContext() : ParserContext(s, r, log), r(log), s(nullptr) {}; - -}; - TEST(XmlParser, mismatchedTagException) { - TestParserContext ctx; + StandaloneParserContext ctx; XmlParser p; bool hadException = false; try { - p.parse("data\n", ctx); + p.parse("\n", ctx); } catch (ParserException ex) { ASSERT_EQ(2, ex.line); @@ -55,19 +43,27 @@ TEST(XmlParser, mismatchedTagException) ASSERT_TRUE(hadException); } -const char* TEST_DATA = "\n" - "\n" - " \n" - "\n"; +const char *TEST_DATA = + "\n" + "\n" + " \n" + " \n" + " \n" + " \n" + " \n" + " \n" + " \n" + " Dies ist ein Test>\n" + " \n" + "\n"; TEST(XmlParser, namespaces) { - TestParserContext ctx; + StandaloneParserContext ctx; XmlParser p; p.parse(TEST_DATA, ctx); } - } } } -- cgit v1.2.3