]> granicus.if.org Git - clang/commitdiff
Decl printing: add tests for typedefs
authorDmitri Gribenko <gribozavr@gmail.com>
Mon, 3 Mar 2014 13:21:00 +0000 (13:21 +0000)
committerDmitri Gribenko <gribozavr@gmail.com>
Mon, 3 Mar 2014 13:21:00 +0000 (13:21 +0000)
Patch by Konrad Kleine.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@202709 91177308-0d34-0410-b5e6-96231b3b80d8

unittests/AST/DeclPrinterTest.cpp

index c604fb1e7e3ed2be4017920e74e695b26ca3a20a..5420d968ce27d3cfbd8e3420f247de8df04456e6 100644 (file)
@@ -170,6 +170,40 @@ public:
 
 } // unnamed namespace
 
+TEST(DeclPrinter, TestTypedef1) {
+  ASSERT_TRUE(PrintedDeclCXX98Matches(
+    "typedef int A;",
+    "A",
+    "typedef int A"));
+    // Should be: with semicolon
+}
+
+TEST(DeclPrinter, TestTypedef2) {
+  ASSERT_TRUE(PrintedDeclCXX98Matches(
+    "typedef const char *A;",
+    "A",
+    "typedef const char *A"));
+    // Should be: with semicolon
+}
+
+TEST(DeclPrinter, TestTypedef3) {
+  ASSERT_TRUE(PrintedDeclCXX98Matches(
+    "template <typename Y> class X {};"
+    "typedef X<int> A;",
+    "A",
+    "typedef X<int> A"));
+    // Should be: with semicolon
+}
+
+TEST(DeclPrinter, TestTypedef4) {
+  ASSERT_TRUE(PrintedDeclCXX98Matches(
+    "namespace X { class Y {}; }"
+    "typedef X::Y A;",
+    "A",
+    "typedef X::Y A"));
+    // Should be: with semicolon
+}
+
 TEST(DeclPrinter, TestNamespace1) {
   ASSERT_TRUE(PrintedDeclCXX98Matches(
     "namespace A { int B; }",