diff options
Diffstat (limited to 'clang-tools-extra/unittests/clang-tidy')
-rw-r--r-- | clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h b/clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h index 6fb031811f3..a9c68d4a939 100644 --- a/clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h +++ b/clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h @@ -41,22 +41,26 @@ private: template <typename T> std::string runCheckOnCode(StringRef Code, - std::vector<ClangTidyError> *Errors = nullptr) { + std::vector<ClangTidyError> *Errors = nullptr, + const Twine &Filename = "input.cc", + ArrayRef<std::string> ExtraArgs = None) { T Check; ClangTidyContext Context( new DefaultOptionsProvider(ClangTidyGlobalOptions(), ClangTidyOptions())); ClangTidyDiagnosticConsumer DiagConsumer(Context); Check.setContext(&Context); std::vector<std::string> ArgCXX11(1, "-std=c++11"); + ArgCXX11.insert(ArgCXX11.end(), ExtraArgs.begin(), ExtraArgs.end()); if (!tooling::runToolOnCodeWithArgs(new TestPPAction(Check, &Context), Code, - ArgCXX11)) + ArgCXX11, Filename)) return ""; ast_matchers::MatchFinder Finder; Check.registerMatchers(&Finder); std::unique_ptr<tooling::FrontendActionFactory> Factory( tooling::newFrontendActionFactory(&Finder)); - if (!tooling::runToolOnCodeWithArgs(Factory->create(), Code, ArgCXX11)) + if (!tooling::runToolOnCodeWithArgs(Factory->create(), Code, ArgCXX11, + Filename)) return ""; DiagConsumer.finish(); tooling::Replacements Fixes; |