From bd9fe651a56ca0e7eac82ed1f242266c84ab40c2 Mon Sep 17 00:00:00 2001 From: summerji Date: Mon, 9 Nov 2020 12:18:22 -0800 Subject: [PATCH 1/8] Update code mark for sample code snippet in Javadoc --- .../api/generator/engine/ast/JavaDocComment.java | 4 ++-- .../api/generator/engine/ast/JavaDocCommentTest.java | 8 ++++---- .../engine/goldens/JavaCodeGeneratorTest.golden | 4 ++-- .../engine/writer/JavaWriterVisitorTest.java | 12 ++++++------ 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java b/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java index a19c5518d3..039641b0b1 100644 --- a/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java +++ b/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java @@ -85,13 +85,13 @@ public Builder addComment(String comment) { } public Builder addSampleCode(String sampleCode) { - componentsList.add("
");
+      componentsList.add("
{@code");
       Arrays.stream(sampleCode.split("\\r?\\n"))
           .forEach(
               line -> {
                 componentsList.add(HtmlEscaper.process(line));
               });
-      componentsList.add("
"); + componentsList.add("}
"); return this; } diff --git a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java index b80014f6f8..d47b123052 100644 --- a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java +++ b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java @@ -46,10 +46,10 @@ public void createJavaDocComment_specialCharacter() { + "&\"\\f\n" + "`'{@literal @}*/\n" + "

title: GetBigBook: <War and Peace>\n" - + "

\n"
+            + "
{@code\n"
             + "ApiFuture<Shelf> future ="
             + " libraryClient.createShelfCallable().futureCall(request);\n"
-            + "
\n" + + "}
\n" + "@throws Exception This is an exception."; assertEquals(javaDocComment.comment(), expected); } @@ -62,9 +62,9 @@ public void createJavaDocComment_sampleCode() { JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode).build(); String expected = "sample codes:\n" - + "
\n"
+            + "
{@code\n"
             + "resource = project/{project}/shelfId/{shelfId}\n"
-            + "
"; + + "}
"; assertEquals(javaDocComment.comment(), expected); } diff --git a/src/test/java/com/google/api/generator/engine/goldens/JavaCodeGeneratorTest.golden b/src/test/java/com/google/api/generator/engine/goldens/JavaCodeGeneratorTest.golden index c6fb279b8f..2dae06aa3f 100644 --- a/src/test/java/com/google/api/generator/engine/goldens/JavaCodeGeneratorTest.golden +++ b/src/test/java/com/google/api/generator/engine/goldens/JavaCodeGeneratorTest.golden @@ -26,9 +26,9 @@ import java.util.Stack; /** * Service Description: This is a test comment. * - *

+ * 
{@code
  * LibraryServiceStub libServiceStub = new LibraryServiceStub()
- * 
+ * }
* *
    *
  1. A "flattened" method. diff --git a/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java b/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java index 98379fac93..4d43c8fc73 100644 --- a/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java +++ b/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java @@ -513,11 +513,11 @@ public void writeJavaDocCommentStatement_allComponents() { "* this is a test comment\n", "*

    This class provides the ability to make remote calls to the backing service" + " through method calls that map to API methods. Sample code to get started:\n", - "*

    \n",
    +            "* 
    {@code\n",
                 "* try (boolean condition = false) {\n",
                 "* int x = 3;\n",
                 "* }\n",
    -            "* 
    \n", + "* }
    \n", "*

    The surface of this class includes several types of Java methods for each of" + " the API's methods:\n", "*

      \n", @@ -525,11 +525,11 @@ public void writeJavaDocCommentStatement_allComponents() { "*
    1. A request object method.\n", "*
    2. A callable method.\n", "*
    \n", - "*
    \n",
    +            "* 
    {@code\n",
                 "* try (boolean condition = false) {\n",
                 "* int x = 3;\n",
                 "* }\n",
    -            "* 
    \n", + "* }
    \n", "* @param shelfName The name of the shelf where books are published to.\n", "* @throws com.google.api.gax.rpc.ApiException if the remote call fails.\n", "* @deprecated Use the {@link ArchivedBookName} class instead.\n", @@ -627,10 +627,10 @@ public void writeJavaDocComment_specialChar() { "/**\n", "* The API has a collection of [Shelf][google.example.library.v1.Shelf] resources\n", "* named `bookShelves/*`\n", - "*
    \n",
    +            "* 
    {@code\n",
                 "* ApiFuture<Shelf> future ="
                     + " libraryClient.createShelfCallable().futureCall(request);\n",
    -            "* 
    \n", + "* }
    \n", "*
      \n", "*
    1. A \"flattened\" method.\n", "*
    2. A \"request object\" method.\n", From ae72c0f4231d71ddce88a1d6a83bd5775a8c078c Mon Sep 17 00:00:00 2001 From: summerji Date: Mon, 9 Nov 2020 14:57:24 -0800 Subject: [PATCH 2/8] safe remove html escape for this style --- .../com/google/api/generator/engine/ast/JavaDocComment.java | 2 +- .../com/google/api/generator/engine/ast/JavaDocCommentTest.java | 2 +- .../api/generator/engine/writer/JavaWriterVisitorTest.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java b/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java index 039641b0b1..e88380480f 100644 --- a/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java +++ b/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java @@ -89,7 +89,7 @@ public Builder addSampleCode(String sampleCode) { Arrays.stream(sampleCode.split("\\r?\\n")) .forEach( line -> { - componentsList.add(HtmlEscaper.process(line)); + componentsList.add(line); }); componentsList.add("}"); return this; diff --git a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java index d47b123052..65352337c4 100644 --- a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java +++ b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java @@ -47,7 +47,7 @@ public void createJavaDocComment_specialCharacter() { + "`'{@literal @}*/\n" + "

      title: GetBigBook: <War and Peace>\n" + "

      {@code\n"
      -            + "ApiFuture<Shelf> future ="
      +            + "ApiFuture future ="
                   + " libraryClient.createShelfCallable().futureCall(request);\n"
                   + "}
      \n" + "@throws Exception This is an exception."; diff --git a/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java b/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java index 4d43c8fc73..4c7135ed84 100644 --- a/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java +++ b/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java @@ -628,7 +628,7 @@ public void writeJavaDocComment_specialChar() { "* The API has a collection of [Shelf][google.example.library.v1.Shelf] resources\n", "* named `bookShelves/*`\n", "*
      {@code\n",
      -            "* ApiFuture<Shelf> future ="
      +            "* ApiFuture future ="
                       + " libraryClient.createShelfCallable().futureCall(request);\n",
                   "* }
      \n", "*
        \n", From 9abb7b5e7813d0202b5dd5a923621e0f92f24b5a Mon Sep 17 00:00:00 2001 From: summerji Date: Mon, 9 Nov 2020 17:24:40 -0800 Subject: [PATCH 3/8] add unit test for keeping formatted code snippet in the code mark --- .../engine/ast/JavaDocCommentTest.java | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java index 65352337c4..6bed8992e5 100644 --- a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java +++ b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java @@ -68,6 +68,39 @@ public void createJavaDocComment_sampleCode() { assertEquals(javaDocComment.comment(), expected); } + @Test + public void createJavaDocComment_sampleCodeKeepIndent() { + String comment = "sample codes:"; + String sampleCode = "try (condition = false) {\n" + " int x = 3;\n" + "}"; + JavaDocComment javaDocComment = + JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode).build(); + String expected = + "sample codes:\n" + + "
        {@code\n"
        +            + "try (condition = false) {\n"
        +            + "  int x = 3;\n"
        +            + "}\n"
        +            + "}
        "; + assertEquals(javaDocComment.comment(), expected); + } + + @Test + public void createJavaDocComment_sampleCodeKeepLineBreaker() { + String comment = "sample codes:"; + String sampleCode = + "SubscriptionAdminSettings subscriptionAdminSettings =\n" + + " SubscriptionAdminSettings.newBuilder().setEndpoint(myEndpoint).build();"; + JavaDocComment javaDocComment = + JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode).build(); + String expected = + "sample codes:\n" + + "
        {@code\n"
        +            + "SubscriptionAdminSettings subscriptionAdminSettings =\n"
        +            + "    SubscriptionAdminSettings.newBuilder().setEndpoint(myEndpoint).build();\n"
        +            + "}
        "; + assertEquals(javaDocComment.comment(), expected); + } + @Test public void createJavaDocComment_multipleComments() { // Add methods, like `addComment()`, should add components at any place, @@ -198,4 +231,8 @@ public void createavaDocComment_allComponents() { + "@deprecated Use the {@link ArchivedBookName} class instead."; assertEquals(javaDocComment.comment(), expected); } + + private static String createLines(int numLines) { + return new String(new char[numLines]).replace("\0", "%s"); + } } From b6042a9188dacc871c7e86c441aa5e3890ef9dba Mon Sep 17 00:00:00 2001 From: summerji Date: Tue, 10 Nov 2020 00:50:56 -0800 Subject: [PATCH 4/8] Add comment and fix name --- .../com/google/api/generator/engine/ast/JavaDocComment.java | 3 +++ .../google/api/generator/engine/ast/JavaDocCommentTest.java | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java b/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java index e88380480f..15374647f9 100644 --- a/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java +++ b/src/main/java/com/google/api/generator/engine/ast/JavaDocComment.java @@ -84,6 +84,9 @@ public Builder addComment(String comment) { return this; } + // TODO(developer):
         and {@code} is not supporting rendering '@' character, it is evaluated
        +    // as Javadoc tag. Please handle '@' character if need in the future. More details at
        +    // https://reflectoring.io/howto-format-code-snippets-in-javadoc/#pre--code
             public Builder addSampleCode(String sampleCode) {
               componentsList.add("
        {@code");
               Arrays.stream(sampleCode.split("\\r?\\n"))
        diff --git a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java
        index 6bed8992e5..a2b339be92 100644
        --- a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java
        +++ b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java
        @@ -69,7 +69,7 @@ public void createJavaDocComment_sampleCode() {
           }
         
           @Test
        -  public void createJavaDocComment_sampleCodeKeepIndent() {
        +  public void createJavaDocComment_sampleCodeKeepsIndent() {
             String comment = "sample codes:";
             String sampleCode = "try (condition = false) {\n" + "  int x = 3;\n" + "}";
             JavaDocComment javaDocComment =
        @@ -85,7 +85,7 @@ public void createJavaDocComment_sampleCodeKeepIndent() {
           }
         
           @Test
        -  public void createJavaDocComment_sampleCodeKeepLineBreaker() {
        +  public void createJavaDocComment_sampleCodeKeepsLongLineBreak() {
             String comment = "sample codes:";
             String sampleCode =
                 "SubscriptionAdminSettings subscriptionAdminSettings =\n"
        
        From 3b9d0618f83161bcbb8cd2ba0e4dae64772f7195 Mon Sep 17 00:00:00 2001
        From: summerji 
        Date: Wed, 11 Nov 2020 10:17:15 -0800
        Subject: [PATCH 5/8] merge two unit test
        
        ---
         .../engine/ast/JavaDocCommentTest.java        | 26 ++++++-------------
         1 file changed, 8 insertions(+), 18 deletions(-)
        
        diff --git a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java
        index a2b339be92..4e10b3d600 100644
        --- a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java
        +++ b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java
        @@ -69,27 +69,14 @@ public void createJavaDocComment_sampleCode() {
           }
         
           @Test
        -  public void createJavaDocComment_sampleCodeKeepsIndent() {
        -    String comment = "sample codes:";
        -    String sampleCode = "try (condition = false) {\n" + "  int x = 3;\n" + "}";
        -    JavaDocComment javaDocComment =
        -        JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode).build();
        -    String expected =
        -        "sample codes:\n"
        -            + "
        {@code\n"
        -            + "try (condition = false) {\n"
        -            + "  int x = 3;\n"
        -            + "}\n"
        -            + "}
        "; - assertEquals(javaDocComment.comment(), expected); - } - - @Test - public void createJavaDocComment_sampleCodeKeepsLongLineBreak() { + public void createJavaDocComment_sampleCodeKeepsFormat() { String comment = "sample codes:"; String sampleCode = "SubscriptionAdminSettings subscriptionAdminSettings =\n" - + " SubscriptionAdminSettings.newBuilder().setEndpoint(myEndpoint).build();"; + + " SubscriptionAdminSettings.newBuilder().setEndpoint(myEndpoint).build();\n" + + "try (condition = false) {\n" + + " int x = 3;\n" + + "}"; JavaDocComment javaDocComment = JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode).build(); String expected = @@ -97,6 +84,9 @@ public void createJavaDocComment_sampleCodeKeepsLongLineBreak() { + "
        {@code\n"
                     + "SubscriptionAdminSettings subscriptionAdminSettings =\n"
                     + "    SubscriptionAdminSettings.newBuilder().setEndpoint(myEndpoint).build();\n"
        +            + "try (condition = false) {\n"
        +            + "  int x = 3;\n"
        +            + "}\n"
                     + "}
        "; assertEquals(javaDocComment.comment(), expected); } From 203ac6074c06d984bc42ffa00f8263bd92b680ef Mon Sep 17 00:00:00 2001 From: summerji Date: Wed, 11 Nov 2020 11:09:24 -0800 Subject: [PATCH 6/8] add compare unit test --- .../engine/ast/JavaDocCommentTest.java | 56 ++++++++++++++----- 1 file changed, 43 insertions(+), 13 deletions(-) diff --git a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java index 4e10b3d600..a416618526 100644 --- a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java +++ b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java @@ -69,26 +69,56 @@ public void createJavaDocComment_sampleCode() { } @Test - public void createJavaDocComment_sampleCodeKeepsFormat() { + public void createJavaDocComment_sampleCodePreserveIndentAndLineBreaks() { String comment = "sample codes:"; - String sampleCode = + String sampleCode1 = "SubscriptionAdminSettings subscriptionAdminSettings =\n" - + " SubscriptionAdminSettings.newBuilder().setEndpoint(myEndpoint).build();\n" - + "try (condition = false) {\n" - + " int x = 3;\n" - + "}"; - JavaDocComment javaDocComment = - JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode).build(); - String expected = + + " SubscriptionAdminSettings.newBuilder().setEndpoint(myEndpoint).build();\n"; + String sampleCode2 = + "SubscriptionAdminSettings subscriptionAdminSettings =\n" + + " SubscriptionAdminSettings\n" + + " .newBuilder()\n" + + " .setEndpoint(myEndpoint)\n" + + " .build();\n"; + String sampleCodeNotFormatted = + "SubscriptionAdminSettings subscriptionAdminSettings =\n" + + " SubscriptionAdminSettings\n" + + " .newBuilder()\n" + + " .setEndpoint(myEndpoint)\n" + + " .build();\n"; + JavaDocComment javaDocComment1 = + JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode1).build(); + JavaDocComment javaDocComment2 = + JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode2).build(); + JavaDocComment javaDocComment3 = + JavaDocComment.builder().addComment(comment).addSampleCode(sampleCodeNotFormatted).build(); + String expected1 = "sample codes:\n" + "
        {@code\n"
                     + "SubscriptionAdminSettings subscriptionAdminSettings =\n"
                     + "    SubscriptionAdminSettings.newBuilder().setEndpoint(myEndpoint).build();\n"
        -            + "try (condition = false) {\n"
        -            + "  int x = 3;\n"
        -            + "}\n"
                     + "}
        "; - assertEquals(javaDocComment.comment(), expected); + String expected2 = + "sample codes:\n" + + "
        {@code\n"
        +            + "SubscriptionAdminSettings subscriptionAdminSettings =\n"
        +            + "    SubscriptionAdminSettings\n"
        +            + "        .newBuilder()\n"
        +            + "        .setEndpoint(myEndpoint)\n"
        +            + "        .build();\n"
        +            + "}
        "; + String expected3 = + "sample codes:\n" + + "
        {@code\n"
        +            + "SubscriptionAdminSettings subscriptionAdminSettings =\n"
        +            + "    SubscriptionAdminSettings\n"
        +            + "        .newBuilder()\n"
        +            + "    .setEndpoint(myEndpoint)\n"
        +            + "        .build();\n"
        +            + "}
        "; + assertEquals(javaDocComment1.comment(), expected1); + assertEquals(javaDocComment2.comment(), expected2); + assertEquals(javaDocComment3.comment(), expected3); } @Test From 563822dc544bb4733eda468b35fd78d27077fcf8 Mon Sep 17 00:00:00 2001 From: summerji Date: Thu, 12 Nov 2020 16:06:54 -0800 Subject: [PATCH 7/8] polish the unit test --- .../engine/ast/JavaDocCommentTest.java | 35 ++----------------- 1 file changed, 2 insertions(+), 33 deletions(-) diff --git a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java index a416618526..6394c177c1 100644 --- a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java +++ b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java @@ -80,45 +80,14 @@ public void createJavaDocComment_sampleCodePreserveIndentAndLineBreaks() { + " .newBuilder()\n" + " .setEndpoint(myEndpoint)\n" + " .build();\n"; - String sampleCodeNotFormatted = - "SubscriptionAdminSettings subscriptionAdminSettings =\n" - + " SubscriptionAdminSettings\n" - + " .newBuilder()\n" - + " .setEndpoint(myEndpoint)\n" - + " .build();\n"; JavaDocComment javaDocComment1 = JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode1).build(); JavaDocComment javaDocComment2 = JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode2).build(); - JavaDocComment javaDocComment3 = - JavaDocComment.builder().addComment(comment).addSampleCode(sampleCodeNotFormatted).build(); - String expected1 = - "sample codes:\n" - + "
        {@code\n"
        -            + "SubscriptionAdminSettings subscriptionAdminSettings =\n"
        -            + "    SubscriptionAdminSettings.newBuilder().setEndpoint(myEndpoint).build();\n"
        -            + "}
        "; - String expected2 = - "sample codes:\n" - + "
        {@code\n"
        -            + "SubscriptionAdminSettings subscriptionAdminSettings =\n"
        -            + "    SubscriptionAdminSettings\n"
        -            + "        .newBuilder()\n"
        -            + "        .setEndpoint(myEndpoint)\n"
        -            + "        .build();\n"
        -            + "}
        "; - String expected3 = - "sample codes:\n" - + "
        {@code\n"
        -            + "SubscriptionAdminSettings subscriptionAdminSettings =\n"
        -            + "    SubscriptionAdminSettings\n"
        -            + "        .newBuilder()\n"
        -            + "    .setEndpoint(myEndpoint)\n"
        -            + "        .build();\n"
        -            + "}
        "; + String expected1 = comment.concat("\n
        {@code\n" + sampleCode1 + "}
        "); + String expected2 = comment.concat("\n
        {@code\n" + sampleCode2 + "}
        "); assertEquals(javaDocComment1.comment(), expected1); assertEquals(javaDocComment2.comment(), expected2); - assertEquals(javaDocComment3.comment(), expected3); } @Test From fc1302c0643fdb1e66c7d060c2bc8c6804827850 Mon Sep 17 00:00:00 2001 From: summerji Date: Thu, 12 Nov 2020 19:54:34 -0800 Subject: [PATCH 8/8] fix the unit test --- .../engine/ast/JavaDocCommentTest.java | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java index 6394c177c1..967b5ad575 100644 --- a/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java +++ b/src/test/java/com/google/api/generator/engine/ast/JavaDocCommentTest.java @@ -71,23 +71,24 @@ public void createJavaDocComment_sampleCode() { @Test public void createJavaDocComment_sampleCodePreserveIndentAndLineBreaks() { String comment = "sample codes:"; - String sampleCode1 = + String formattedSampleCode = "SubscriptionAdminSettings subscriptionAdminSettings =\n" + " SubscriptionAdminSettings.newBuilder().setEndpoint(myEndpoint).build();\n"; - String sampleCode2 = + String badFormattingSampleCode = "SubscriptionAdminSettings subscriptionAdminSettings =\n" + " SubscriptionAdminSettings\n" + " .newBuilder()\n" - + " .setEndpoint(myEndpoint)\n" + + " .setEndpoint(myEndpoint)\n" + " .build();\n"; - JavaDocComment javaDocComment1 = - JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode1).build(); - JavaDocComment javaDocComment2 = - JavaDocComment.builder().addComment(comment).addSampleCode(sampleCode2).build(); - String expected1 = comment.concat("\n
        {@code\n" + sampleCode1 + "}
        "); - String expected2 = comment.concat("\n
        {@code\n" + sampleCode2 + "}
        "); - assertEquals(javaDocComment1.comment(), expected1); - assertEquals(javaDocComment2.comment(), expected2); + JavaDocComment formattedJavaDoc = + JavaDocComment.builder().addComment(comment).addSampleCode(formattedSampleCode).build(); + JavaDocComment badFormatJavaDoc = + JavaDocComment.builder().addComment(comment).addSampleCode(badFormattingSampleCode).build(); + String expectedFormatted = comment.concat("\n
        {@code\n" + formattedSampleCode + "}
        "); + String expectedBadFormat = + comment.concat("\n
        {@code\n" + badFormattingSampleCode + "}
        "); + assertEquals(formattedJavaDoc.comment(), expectedFormatted); + assertEquals(badFormatJavaDoc.comment(), expectedBadFormat); } @Test