summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/unittests/clang-move/ClangMoveTests.cpp
diff options
context:
space:
mode:
authorEric Liu <ioeric@google.com>2016-12-06 10:12:23 +0000
committerEric Liu <ioeric@google.com>2016-12-06 10:12:23 +0000
commit47a42d53fc72718b0fd8f9f0501be7f6e565814d (patch)
tree4e5404a444d00e989281674993292577384c2145 /clang-tools-extra/unittests/clang-move/ClangMoveTests.cpp
parent8977223e5520ac3cb8f7a5e04f28129eae25c3eb (diff)
downloadbcm5719-llvm-47a42d53fc72718b0fd8f9f0501be7f6e565814d.tar.gz
bcm5719-llvm-47a42d53fc72718b0fd8f9f0501be7f6e565814d.zip
[clang-move] ignore unsupported symbol kinds when checking if all symbols are moved.
llvm-svn: 288791
Diffstat (limited to 'clang-tools-extra/unittests/clang-move/ClangMoveTests.cpp')
-rw-r--r--clang-tools-extra/unittests/clang-move/ClangMoveTests.cpp23
1 files changed, 20 insertions, 3 deletions
diff --git a/clang-tools-extra/unittests/clang-move/ClangMoveTests.cpp b/clang-tools-extra/unittests/clang-move/ClangMoveTests.cpp
index bc88bc309f4..3c4a9b591dc 100644
--- a/clang-tools-extra/unittests/clang-move/ClangMoveTests.cpp
+++ b/clang-tools-extra/unittests/clang-move/ClangMoveTests.cpp
@@ -330,11 +330,8 @@ TEST(ClangMove, DontMoveAll) {
"#endif // NEW_FOO_H\n";
const char Code[] = "#include \"foo.h\"\nint A::f() { return 0; }";
std::vector<std::string> TestHeaders = {
- "typedef int Int;\nclass A {\npublic:\n int f();\n};\n",
- "using Int=int;\nclass A {\npublic:\n int f();\n};\n",
"class B {};\nclass A {\npublic:\n int f();\n};\n",
"void f() {};\nclass A {\npublic:\n int f();\n};\n",
- "enum Color { RED };\nclass A {\npublic:\n int f();\n};\n",
};
move::MoveDefinitionSpec Spec;
Spec.Names.push_back("A");
@@ -351,6 +348,26 @@ TEST(ClangMove, DontMoveAll) {
}
}
+TEST(ClangMove, IgnoreUnsupportedKindsAndMoveAll) {
+ const char Code[] = "#include \"foo.h\"\nint A::f() { return 0; }";
+ std::vector<std::string> TestHeaders = {
+ "typedef int Int;\nclass A {\npublic:\n int f();\n};\n",
+ "using Int = int;\nclass A {\npublic:\n int f();\n};\n",
+ "enum Color { RED };\nclass A {\npublic:\n int f();\n};\n",
+ };
+ move::MoveDefinitionSpec Spec;
+ Spec.Names.push_back("A");
+ Spec.OldHeader = "foo.h";
+ Spec.OldCC = "foo.cc";
+ Spec.NewHeader = "new_foo.h";
+ Spec.NewCC = "new_foo.cc";
+ for (const auto &Header : TestHeaders) {
+ auto Results = runClangMoveOnCode(Spec, Header.c_str(), Code);
+ EXPECT_EQ(Header, Results[Spec.NewHeader]);
+ EXPECT_EQ("", Results[Spec.OldHeader]);
+ }
+}
+
TEST(ClangMove, MacroInFunction) {
const char TestHeader[] = "#define INT int\n"
"class A {\npublic:\n int f();\n};\n"
OpenPOWER on IntegriCloud