diff options
author | Marius Kintel <marius@kintel.net> | 2013-05-09 10:12:58 (GMT) |
---|---|---|
committer | Marius Kintel <marius@kintel.net> | 2013-05-09 10:12:58 (GMT) |
commit | 14e1ad23635a65d98c59ae14e35484abbd3ba6c4 (patch) | |
tree | 0ef8483812496e456023a9341dcf76f0bbba7006 /tests/tests-common.cc | |
parent | 0e938364fea8c3ab07b06491fd21cb34a403bf99 (diff) |
Forgot to actually add most files in previous commit (#217)
Diffstat (limited to 'tests/tests-common.cc')
-rw-r--r-- | tests/tests-common.cc | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/tests/tests-common.cc b/tests/tests-common.cc index ac85e37..3c66e1b 100644 --- a/tests/tests-common.cc +++ b/tests/tests-common.cc @@ -7,7 +7,12 @@ #include <sstream> #include <fstream> -FileModule *parsefile(const char *filename) +/*! + fakepath is used to force the parser to believe that the file is + read from this location, in order to ensure that filepaths are + eavluated relative to this path (for testing purposes). +*/ +FileModule *parsefile(const char *filename, const char *fakepath) { FileModule *root_module = NULL; @@ -19,7 +24,9 @@ FileModule *parsefile(const char *filename) else { std::string text((std::istreambuf_iterator<char>(ifs)), std::istreambuf_iterator<char>()); text += "\n" + commandline_commands; - std::string pathname = boosty::stringy(fs::path(filename).parent_path()); + std::string pathname; + if (fakepath) pathname = fakepath; + else pathname = boosty::stringy(fs::path(filename).parent_path()); root_module = parse(text.c_str(), pathname.c_str(), false); if (root_module) { root_module->handleDependencies(); |