]> granicus.if.org Git - clang/commitdiff
[clang-format] Add tests for ambiguous namespaces to the comment fixer
authorKrasimir Georgiev <krasimir@google.com>
Mon, 6 Mar 2017 17:29:25 +0000 (17:29 +0000)
committerKrasimir Georgiev <krasimir@google.com>
Mon, 6 Mar 2017 17:29:25 +0000 (17:29 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@297034 91177308-0d34-0410-b5e6-96231b3b80d8

unittests/Format/NamespaceEndCommentsFixerTest.cpp

index 0341fd7ef44f99824848662294a61ceec9d5d0af..f0e67b39a3bbb2fc42c6df1c7e5d9b2cd0469c5c 100644 (file)
@@ -406,6 +406,86 @@ TEST_F(NamespaceEndCommentsFixerTest,
                                     "#else\n"
                                     "  int j;\n"
                                     "#endif"));
+  EXPECT_EQ("#if A\n"
+            "namespace A {\n"
+            "#else\n"
+            "namespace B {\n"
+            "#endif\n"
+            "int i;\n"
+            "int j;\n"
+            "}",
+            fixNamespaceEndComments("#if A\n"
+                                    "namespace A {\n"
+                                    "#else\n"
+                                    "namespace B {\n"
+                                    "#endif\n"
+                                    "int i;\n"
+                                    "int j;\n"
+                                    "}"));
+  EXPECT_EQ("#if A\n"
+            "namespace A {\n"
+            "#else\n"
+            "namespace B {\n"
+            "#endif\n"
+            "int i;\n"
+            "int j;\n"
+            "} // namespace A",
+            fixNamespaceEndComments("#if A\n"
+                                    "namespace A {\n"
+                                    "#else\n"
+                                    "namespace B {\n"
+                                    "#endif\n"
+                                    "int i;\n"
+                                    "int j;\n"
+                                    "} // namespace A"));
+  EXPECT_EQ("#if A\n"
+            "namespace A {\n"
+            "#else\n"
+            "namespace B {\n"
+            "#endif\n"
+            "int i;\n"
+            "int j;\n"
+            "} // namespace B",
+            fixNamespaceEndComments("#if A\n"
+                                    "namespace A {\n"
+                                    "#else\n"
+                                    "namespace B {\n"
+                                    "#endif\n"
+                                    "int i;\n"
+                                    "int j;\n"
+                                    "} // namespace B"));
+  EXPECT_EQ("namespace A\n"
+            "int i;\n"
+            "int j;\n"
+            "#if A\n"
+            "}\n"
+            "#else\n"
+            "}\n"
+            "#endif",
+            fixNamespaceEndComments("namespace A\n"
+                                    "int i;\n"
+                                    "int j;\n"
+                                    "#if A\n"
+                                    "}\n"
+                                    "#else\n"
+                                    "}\n"
+                                    "#endif"));
+  EXPECT_EQ("namespace A\n"
+            "int i;\n"
+            "int j;\n"
+            "#if A\n"
+            "} // namespace A\n"
+            "#else\n"
+            "} // namespace A\n"
+            "#endif",
+            fixNamespaceEndComments("namespace A\n"
+                                    "int i;\n"
+                                    "int j;\n"
+                                    "#if A\n"
+                                    "} // namespace A\n"
+                                    "#else\n"
+                                    "} // namespace A\n"
+                                    "#endif"));
 }
 
 TEST_F(NamespaceEndCommentsFixerTest,