summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/unittests/clang-tidy
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2014-08-12 12:12:54 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2014-08-12 12:12:54 +0000
commit6318f7614f748acba9d8acb5b53e7a2df42aaa47 (patch)
tree5c3c86bff822bac23070df7602e021624ab18fac /clang-tools-extra/unittests/clang-tidy
parent39c70bbf5621f8f3a37e8d86cf23b016fa1a484f (diff)
downloadbcm5719-llvm-6318f7614f748acba9d8acb5b53e7a2df42aaa47.tar.gz
bcm5719-llvm-6318f7614f748acba9d8acb5b53e7a2df42aaa47.zip
Allow specifying file names and extra arguments when running clang-tidy unit tests.
Will become useful soon. llvm-svn: 215438
Diffstat (limited to 'clang-tools-extra/unittests/clang-tidy')
-rw-r--r--clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h10
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;
OpenPOWER on IntegriCloud