diff --git a/gapic-generator-java/src/main/java/com/google/api/generator/gapic/composer/comment/ServiceClientCommentComposer.java b/gapic-generator-java/src/main/java/com/google/api/generator/gapic/composer/comment/ServiceClientCommentComposer.java index 49ed6e168e..e31f04c827 100644 --- a/gapic-generator-java/src/main/java/com/google/api/generator/gapic/composer/comment/ServiceClientCommentComposer.java +++ b/gapic-generator-java/src/main/java/com/google/api/generator/gapic/composer/comment/ServiceClientCommentComposer.java @@ -242,7 +242,7 @@ private static String createTableOfMethods(List methodAndVari .append(method.method) .append("\n") .append(" ") - .append("

" + method.description + "

") + .append(CommentFormatter.formatAsJavaDocComment(method.description, null)) .append("\n") .append(" \n"); generateUnorderedListMethodVariants( diff --git a/gapic-generator-java/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java b/gapic-generator-java/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java index f3896901e1..e538b11cc7 100644 --- a/gapic-generator-java/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java +++ b/gapic-generator-java/src/test/java/com/google/api/generator/engine/writer/JavaWriterVisitorTest.java @@ -71,6 +71,7 @@ import com.google.api.generator.engine.ast.Variable; import com.google.api.generator.engine.ast.VariableExpr; import com.google.api.generator.engine.ast.WhileStatement; +import com.google.api.generator.engine.writer.JavaFormatter.FormatException; import com.google.api.generator.gapic.composer.grpc.ServiceClientClassComposer; import com.google.api.generator.gapic.model.GapicClass; import com.google.api.generator.gapic.model.GapicContext; @@ -960,6 +961,25 @@ public void writeJavaDocComment_specialChar() { assertEquals(expected, writerVisitor.write()); } + @Test + public void writeFailingComment_specialChar() { + JavaDocComment javaDocComment = + JavaDocComment.builder() + .addUnescapedComment( + "This resource reference needs to be CommentFormatted or it will fail: `bookShelves/*/`") + .build(); + + FormatException exceptionForIncorrectlyFormattedComment = + assertThrows( + FormatException.class, + () -> { + javaDocComment.accept(writerVisitor); + }); + assertThat(exceptionForIncorrectlyFormattedComment) + .hasMessageThat() + .contains("The input resource can not be parsed"); + } + @Test public void writeTernaryExpr_basic() { Variable conditionVariable = diff --git a/gapic-generator-java/src/test/java/com/google/api/generator/engine/writer/goldens/GrpcServiceClientWithNestedClassImport.golden b/gapic-generator-java/src/test/java/com/google/api/generator/engine/writer/goldens/GrpcServiceClientWithNestedClassImport.golden index 2d21bb2e1e..2fad27b9be 100644 --- a/gapic-generator-java/src/test/java/com/google/api/generator/engine/writer/goldens/GrpcServiceClientWithNestedClassImport.golden +++ b/gapic-generator-java/src/test/java/com/google/api/generator/engine/writer/goldens/GrpcServiceClientWithNestedClassImport.golden @@ -38,7 +38,7 @@ import javax.annotation.Generated; * Method Variants * * NestedMessageMethod - *

+ *

* *

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*