summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAndreas Stöckel <astoecke@techfak.uni-bielefeld.de>2015-01-18 21:42:49 +0100
committerAndreas Stöckel <astoecke@techfak.uni-bielefeld.de>2015-01-18 21:42:49 +0100
commit2eec59a47ec36e5e4f921ca91284942b4d7d521b (patch)
tree8847623e9b9b1571150142c236b5ab2d8413ce77 /test
parent677d6830a0252e7478c2f5d6f75cfb845d33ad23 (diff)
Fixed bugs in definition of Project, added reference to Project to ParserContext
Diffstat (limited to 'test')
-rw-r--r--test/core/parser/ParserStackTest.cpp6
-rw-r--r--test/core/parser/StandaloneParserContext.hpp23
-rw-r--r--test/plugins/css/CSSParserTest.cpp12
-rw-r--r--test/plugins/xml/XmlParserTest.cpp4
4 files changed, 25 insertions, 20 deletions
diff --git a/test/core/parser/ParserStackTest.cpp b/test/core/parser/ParserStackTest.cpp
index ed57260..69978b0 100644
--- a/test/core/parser/ParserStackTest.cpp
+++ b/test/core/parser/ParserStackTest.cpp
@@ -69,7 +69,7 @@ static const std::multimap<std::string, HandlerDescriptor> TEST_HANDLERS{
TEST(ParserStack, simpleTest)
{
StandaloneParserContext ctx;
- ParserStack s{ctx, TEST_HANDLERS};
+ ParserStack s{ctx.context, TEST_HANDLERS};
startCount = 0;
endCount = 0;
@@ -132,7 +132,7 @@ TEST(ParserStack, simpleTest)
TEST(ParserStack, errorHandling)
{
StandaloneParserContext ctx;
- ParserStack s{ctx, TEST_HANDLERS};
+ ParserStack s{ctx.context, TEST_HANDLERS};
ASSERT_THROW(s.start("body", {}), OusiaException);
s.start("document", {});
@@ -152,7 +152,7 @@ TEST(ParserStack, validation)
{
ConcreteLogger logger;
StandaloneParserContext ctx(logger);
- ParserStack s{ctx, TEST_HANDLERS};
+ ParserStack s{ctx.context, TEST_HANDLERS};
s.start("arguments", {});
ASSERT_TRUE(logger.hasError());
diff --git a/test/core/parser/StandaloneParserContext.hpp b/test/core/parser/StandaloneParserContext.hpp
index 78d148d..aca056e 100644
--- a/test/core/parser/StandaloneParserContext.hpp
+++ b/test/core/parser/StandaloneParserContext.hpp
@@ -19,28 +19,35 @@
#ifndef _OUSIA_STANDALONE_PARSER_CONTEXT_
#define _OUSIA_STANDALONE_PARSER_CONTEXT_
+#include <memory>
+
+#include <core/model/Project.hpp>
#include <core/parser/Parser.hpp>
namespace ousia {
namespace parser {
-struct StandaloneParserContext : public ParserContext {
-private:
+struct StandaloneParserContext {
+public:
Manager manager;
Logger logger;
Scope scope;
Registry registry;
+ Rooted<model::Project> project;
+ ParserContext context;
-public:
StandaloneParserContext()
- : ParserContext(scope, registry, logger, manager),
- registry(logger){};
+ : registry(logger),
+ project(new model::Project(manager)),
+ context(scope, registry, logger, manager, project)
+ {
+ }
StandaloneParserContext(Logger &externalLogger)
- : ParserContext(scope, registry, externalLogger, manager),
- registry(externalLogger){};
+ : registry(externalLogger),
+ project(new model::Project(manager)),
+ context(scope, registry, externalLogger, manager, project){};
};
-
}
}
diff --git a/test/plugins/css/CSSParserTest.cpp b/test/plugins/css/CSSParserTest.cpp
index 54c359b..84522b3 100644
--- a/test/plugins/css/CSSParserTest.cpp
+++ b/test/plugins/css/CSSParserTest.cpp
@@ -45,7 +45,8 @@ TEST(CSSParser, testParseSelectors)
// parse the data.
CSSParser instance;
- Rooted<SelectorNode> root = instance.parse(data, ctx).cast<SelectorNode>();
+ Rooted<SelectorNode> root =
+ instance.parse(data, ctx.context).cast<SelectorNode>();
// we expect three children of the root node overall.
ASSERT_EQ(3U, root->getEdges().size());
@@ -156,7 +157,7 @@ TEST(CSSParser, testParseCSS)
CSSParser instance;
CharReader reader{input};
Rooted<SelectorNode> root =
- instance.parse(reader, ctx).cast<SelectorNode>();
+ instance.parse(reader, ctx.context).cast<SelectorNode>();
// we expect three children of the root node overall.
ASSERT_EQ(3U, root->getEdges().size());
@@ -269,14 +270,11 @@ void assertException(std::string css)
{
ScopedLogger sl(logger, "test.css", SourceLocation{},
CharReader::contextCallback, &reader);
- Scope scope;
- Registry registry(logger);
- Manager manager;
- ParserContext ctx{scope, registry, logger, manager};
+ StandaloneParserContext ctx(sl);
CSSParser instance;
try {
- instance.parse(reader, ctx).cast<SelectorNode>();
+ instance.parse(reader, ctx.context).cast<SelectorNode>();
}
catch (LoggableException ex) {
logger.log(ex);
diff --git a/test/plugins/xml/XmlParserTest.cpp b/test/plugins/xml/XmlParserTest.cpp
index 2046940..6ac2fc1 100644
--- a/test/plugins/xml/XmlParserTest.cpp
+++ b/test/plugins/xml/XmlParserTest.cpp
@@ -38,7 +38,7 @@ TEST(XmlParser, mismatchedTagException)
bool hadException = false;
try {
- p.parse("<document>\n</document2>", ctx);
+ p.parse("<document>\n</document2>", ctx.context);
}
catch (LoggableException ex) {
ASSERT_EQ(2, ex.loc.line);
@@ -81,7 +81,7 @@ TEST(XmlParser, namespaces)
ScopedLogger sl(logger, "test.oxd", SourceLocation{},
CharReader::contextCallback, &reader);
try {
- p.parse(TEST_DATA, ctx);
+ p.parse(TEST_DATA, ctx.context);
}
catch (LoggableException ex) {
logger.log(ex);