summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/unittests/clang-tidy/LLVMModuleTest.cpp
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2014-08-20 16:01:42 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2014-08-20 16:01:42 +0000
commit208faaaa290319b7eecab112e7922f88097c3ebe (patch)
tree70bd895cc894ef8f92e5f92bd3f000df5199cf73 /clang-tools-extra/unittests/clang-tidy/LLVMModuleTest.cpp
parent061beab6730c9d308705333a18172bd19bd5c87c (diff)
downloadbcm5719-llvm-208faaaa290319b7eecab112e7922f88097c3ebe.tar.gz
bcm5719-llvm-208faaaa290319b7eecab112e7922f88097c3ebe.zip
[clang-tidy] Allow /**/ comments on #endifs when checking header guards.
Turning block comments into line comments just creates unecessary churn. llvm-svn: 216072
Diffstat (limited to 'clang-tools-extra/unittests/clang-tidy/LLVMModuleTest.cpp')
-rw-r--r--clang-tools-extra/unittests/clang-tidy/LLVMModuleTest.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/clang-tools-extra/unittests/clang-tidy/LLVMModuleTest.cpp b/clang-tools-extra/unittests/clang-tidy/LLVMModuleTest.cpp
index 5423169caba..ce4ca641afc 100644
--- a/clang-tools-extra/unittests/clang-tidy/LLVMModuleTest.cpp
+++ b/clang-tools-extra/unittests/clang-tidy/LLVMModuleTest.cpp
@@ -93,6 +93,18 @@ static std::string runHeaderGuardCheck(StringRef Code, const Twine &Filename) {
Code, /*Errors=*/nullptr, Filename, std::string("-xc++-header"));
}
+namespace {
+struct WithEndifComment : public LLVMHeaderGuardCheck {
+ bool shouldSuggestEndifComment(StringRef Filename) override { return true; }
+};
+} // namespace
+
+static std::string runHeaderGuardCheckWithEndif(StringRef Code,
+ const Twine &Filename) {
+ return test::runCheckOnCode<WithEndifComment>(
+ Code, /*Errors=*/nullptr, Filename, std::string("-xc++-header"));
+}
+
TEST(LLVMHeaderGuardCheckTest, FixHeaderGuards) {
EXPECT_EQ("#ifndef LLVM_ADT_FOO_H\n#define LLVM_ADT_FOO_H\n#endif\n",
runHeaderGuardCheck("#ifndef FOO\n#define FOO\n#endif\n",
@@ -126,6 +138,24 @@ TEST(LLVMHeaderGuardCheckTest, FixHeaderGuards) {
runHeaderGuardCheck(
"int foo;\n#ifndef FOOLOLO\n#define FOOLOLO\n#endif\n",
"include/clang/bar.h"));
+
+ EXPECT_EQ("#ifndef LLVM_ADT_FOO_H\n#define LLVM_ADT_FOO_H\n#endif "
+ " // LLVM_ADT_FOO_H\n",
+ runHeaderGuardCheckWithEndif("#ifndef FOO\n#define FOO\n#endif\n",
+ "include/llvm/ADT/foo.h"));
+
+ EXPECT_EQ("#ifndef LLVM_ADT_FOO_H\n#define LLVM_ADT_FOO_H\n#endif "
+ " // LLVM_ADT_FOO_H\n",
+ runHeaderGuardCheckWithEndif("#ifndef LLVM_ADT_FOO_H\n#define "
+ "LLVM_ADT_FOO_H\n#endif // LLVM_H\n",
+ "include/llvm/ADT/foo.h"));
+
+ EXPECT_EQ("#ifndef LLVM_ADT_FOO_H\n#define LLVM_ADT_FOO_H\n#endif"
+ " /* LLVM_ADT_FOO_H */\n",
+ runHeaderGuardCheckWithEndif("#ifndef LLVM_ADT_FOO_H\n#define "
+ "LLVM_ADT_FOO_H\n"
+ "#endif /* LLVM_ADT_FOO_H */\n",
+ "include/llvm/ADT/foo.h"));
}
#endif
OpenPOWER on IntegriCloud