]> granicus.if.org Git - clang/commitdiff
Comment parser unit tests: reduce code duplication
authorDmitri Gribenko <gribozavr@gmail.com>
Mon, 23 Jul 2012 23:09:32 +0000 (23:09 +0000)
committerDmitri Gribenko <gribozavr@gmail.com>
Mon, 23 Jul 2012 23:09:32 +0000 (23:09 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160647 91177308-0d34-0410-b5e6-96231b3b80d8

unittests/AST/CommentParser.cpp

index 2c2175070c1f03ad2735aaeaf49263167c28faeb..97515c3c73ec38ea63ea148e505af353aeaf2aba 100644 (file)
@@ -385,6 +385,32 @@ struct NoAttrs {};
   return ::testing::AssertionSuccess();
 }
 
+::testing::AssertionResult HasParagraphCommentAt(const Comment *C,
+                                                 size_t Idx,
+                                                 StringRef Text) {
+  ParagraphComment *PC;
+
+  {
+    ::testing::AssertionResult AR = GetChildAt(C, Idx, PC);
+    if (!AR)
+      return AR;
+  }
+
+  {
+    ::testing::AssertionResult AR = HasChildCount(PC, 1);
+    if (!AR)
+      return AR;
+  }
+
+  {
+    ::testing::AssertionResult AR = HasTextAt(PC, 0, Text);
+    if (!AR)
+      return AR;
+  }
+
+  return ::testing::AssertionSuccess();
+}
+
 ::testing::AssertionResult HasVerbatimBlockAt(const Comment *C,
                                               size_t Idx,
                                               VerbatimBlockComment *&VBC,
@@ -529,13 +555,7 @@ TEST_F(CommentParserTest, Basic2) {
   FullComment *FC = parseString(Source);
   ASSERT_TRUE(HasChildCount(FC, 1));
 
-  {
-    ParagraphComment *PC;
-    ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-    ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " Meow"));
-  }
+  ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " Meow"));
 }
 
 TEST_F(CommentParserTest, Basic3) {
@@ -573,20 +593,8 @@ TEST_F(CommentParserTest, Paragraph1) {
     FullComment *FC = parseString(Sources[i]);
     ASSERT_TRUE(HasChildCount(FC, 2));
 
-    {
-      ParagraphComment *PC;
-      ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-      ASSERT_TRUE(HasChildCount(PC, 1));
-        ASSERT_TRUE(HasTextAt(PC, 0, " Aaa"));
-    }
-    {
-      ParagraphComment *PC;
-      ASSERT_TRUE(GetChildAt(FC, 1, PC));
-
-      ASSERT_TRUE(HasChildCount(PC, 1));
-        ASSERT_TRUE(HasTextAt(PC, 0, " Bbb"));
-    }
+    ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " Aaa"));
+    ASSERT_TRUE(HasParagraphCommentAt(FC, 1, " Bbb"));
   }
 }
 
@@ -599,30 +607,15 @@ TEST_F(CommentParserTest, Paragraph2) {
   FullComment *FC = parseString(Source);
   ASSERT_TRUE(HasChildCount(FC, 3));
 
-  {
-    ParagraphComment *PC;
-    ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-    ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " "));
-  }
+  ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
   {
     BlockCommandComment *BCC;
     ParagraphComment *PC;
     ASSERT_TRUE(HasBlockCommandAt(FC, 1, BCC, "brief", PC));
 
-    ASSERT_TRUE(GetChildAt(BCC, 0, PC));
-
-    ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " Aaa"));
-  }
-  {
-    ParagraphComment *PC;
-    ASSERT_TRUE(GetChildAt(FC, 2, PC));
-
-    ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " Bbb"));
+    ASSERT_TRUE(HasParagraphCommentAt(BCC, 0, " Aaa"));
   }
+  ASSERT_TRUE(HasParagraphCommentAt(FC, 2, " Bbb"));
 }
 
 TEST_F(CommentParserTest, Paragraph3) {
@@ -631,21 +624,13 @@ TEST_F(CommentParserTest, Paragraph3) {
   FullComment *FC = parseString(Source);
   ASSERT_TRUE(HasChildCount(FC, 3));
 
-  {
-    ParagraphComment *PC;
-    ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-    ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " "));
-  }
+  ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
   {
     BlockCommandComment *BCC;
     ParagraphComment *PC;
     ASSERT_TRUE(HasBlockCommandAt(FC, 1, BCC, "brief", PC));
 
-    ASSERT_TRUE(GetChildAt(BCC, 0, PC));
-      ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " "));
+    ASSERT_TRUE(HasParagraphCommentAt(BCC, 0, " "));
   }
   {
     BlockCommandComment *BCC;
@@ -666,13 +651,7 @@ TEST_F(CommentParserTest, Paragraph4) {
   FullComment *FC = parseString(Source);
   ASSERT_TRUE(HasChildCount(FC, 3));
 
-  {
-    ParagraphComment *PC;
-    ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-    ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " "));
-  }
+  ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
   {
     BlockCommandComment *BCC;
     ParagraphComment *PC;
@@ -688,9 +667,7 @@ TEST_F(CommentParserTest, Paragraph4) {
     ParagraphComment *PC;
     ASSERT_TRUE(HasBlockCommandAt(FC, 2, BCC, "author", PC));
 
-    ASSERT_TRUE(GetChildAt(BCC, 0, PC));
-      ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " Ccc"));
+    ASSERT_TRUE(HasParagraphCommentAt(BCC, 0, " Ccc"));
   }
 }
 
@@ -705,13 +682,7 @@ TEST_F(CommentParserTest, ParamCommand1) {
   FullComment *FC = parseString(Source);
   ASSERT_TRUE(HasChildCount(FC, 6));
 
-  {
-    ParagraphComment *PC;
-    ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-    ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " "));
-  }
+  ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
   {
     ParamCommandComment *PCC;
     ParagraphComment *PC;
@@ -1002,13 +973,7 @@ TEST_F(CommentParserTest, VerbatimBlock1) {
   FullComment *FC = parseString(Source);
   ASSERT_TRUE(HasChildCount(FC, 2));
 
-  {
-    ParagraphComment *PC;
-    ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-    ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " "));
-  }
+  ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
   {
     VerbatimBlockComment *VCC;
     ASSERT_TRUE(HasVerbatimBlockAt(FC, 1, VCC, "verbatim", "endverbatim",
@@ -1022,13 +987,7 @@ TEST_F(CommentParserTest, VerbatimBlock2) {
   FullComment *FC = parseString(Source);
   ASSERT_TRUE(HasChildCount(FC, 2));
 
-  {
-    ParagraphComment *PC;
-    ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-    ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " "));
-  }
+  ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
   {
     VerbatimBlockComment *VBC;
     ASSERT_TRUE(HasVerbatimBlockAt(FC, 1, VBC, "verbatim", "endverbatim",
@@ -1042,13 +1001,7 @@ TEST_F(CommentParserTest, VerbatimBlock3) {
   FullComment *FC = parseString(Source);
   ASSERT_TRUE(HasChildCount(FC, 2));
 
-  {
-    ParagraphComment *PC;
-    ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-    ASSERT_TRUE(HasChildCount(PC, 1));
-      ASSERT_TRUE(HasTextAt(PC, 0, " "));
-  }
+  ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
   {
     VerbatimBlockComment *VBC;
     ASSERT_TRUE(HasVerbatimBlockAt(FC, 1, VBC, "verbatim", "",
@@ -1109,13 +1062,7 @@ TEST_F(CommentParserTest, VerbatimBlock6) {
     FullComment *FC = parseString(Sources[i]);
     ASSERT_TRUE(HasChildCount(FC, 2));
 
-    {
-      ParagraphComment *PC;
-      ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-      ASSERT_TRUE(HasChildCount(PC, 1));
-        ASSERT_TRUE(HasTextAt(PC, 0, " "));
-    }
+    ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
     {
       VerbatimBlockComment *VBC;
       ASSERT_TRUE(HasVerbatimBlockAt(FC, 1, VBC, "verbatim", "endverbatim",
@@ -1141,13 +1088,7 @@ TEST_F(CommentParserTest, VerbatimBlock7) {
     FullComment *FC = parseString(Sources[i]);
     ASSERT_TRUE(HasChildCount(FC, 2));
 
-    {
-      ParagraphComment *PC;
-      ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-      ASSERT_TRUE(HasChildCount(PC, 1));
-        ASSERT_TRUE(HasTextAt(PC, 0, " "));
-    }
+    ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
     {
       VerbatimBlockComment *VBC;
       ASSERT_TRUE(HasVerbatimBlockAt(FC, 1, VBC, "verbatim", "endverbatim",
@@ -1174,13 +1115,7 @@ TEST_F(CommentParserTest, VerbatimBlock8) {
     FullComment *FC = parseString(Sources[i]);
     ASSERT_TRUE(HasChildCount(FC, 2));
 
-    {
-      ParagraphComment *PC;
-      ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-      ASSERT_TRUE(HasChildCount(PC, 1));
-        ASSERT_TRUE(HasTextAt(PC, 0, " "));
-    }
+    ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
     {
       VerbatimBlockComment *VBC;
       ASSERT_TRUE(HasVerbatimBlockAt(FC, 1, VBC, "verbatim", "endverbatim"));
@@ -1202,13 +1137,7 @@ TEST_F(CommentParserTest, VerbatimLine1) {
     FullComment *FC = parseString(Sources[i]);
     ASSERT_TRUE(HasChildCount(FC, 2));
 
-    {
-      ParagraphComment *PC;
-      ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-      ASSERT_TRUE(HasChildCount(PC, 1));
-        ASSERT_TRUE(HasTextAt(PC, 0, " "));
-    }
+    ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
     {
       VerbatimLineComment *VLC;
       ASSERT_TRUE(HasVerbatimLineAt(FC, 1, VLC, "fn", ""));
@@ -1226,13 +1155,7 @@ TEST_F(CommentParserTest, VerbatimLine2) {
     FullComment *FC = parseString(Sources[i]);
     ASSERT_TRUE(HasChildCount(FC, 2));
 
-    {
-      ParagraphComment *PC;
-      ASSERT_TRUE(GetChildAt(FC, 0, PC));
-
-      ASSERT_TRUE(HasChildCount(PC, 1));
-        ASSERT_TRUE(HasTextAt(PC, 0, " "));
-    }
+    ASSERT_TRUE(HasParagraphCommentAt(FC, 0, " "));
     {
       VerbatimLineComment *VLC;
       ASSERT_TRUE(HasVerbatimLineAt(FC, 1, VLC, "fn",