From b42c84f405827d0496c4da829587cc93d924632f Mon Sep 17 00:00:00 2001 From: ghm Date: Fri, 16 Jun 2023 04:23:04 -0700 Subject: [PATCH] Strip enough "*"s to turn something into non-Javadoc. PiperOrigin-RevId: 540839980 --- .../bugpatterns/javadoc/NotJavadoc.java | 8 ++++++- .../bugpatterns/javadoc/NotJavadocTest.java | 22 +++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/google/errorprone/bugpatterns/javadoc/NotJavadoc.java b/core/src/main/java/com/google/errorprone/bugpatterns/javadoc/NotJavadoc.java index 0f2660929b5..96ff4bf8cfe 100644 --- a/core/src/main/java/com/google/errorprone/bugpatterns/javadoc/NotJavadoc.java +++ b/core/src/main/java/com/google/errorprone/bugpatterns/javadoc/NotJavadoc.java @@ -64,10 +64,16 @@ public Description matchCompilationUnit(CompilationUnitTree tree, VisitorState s if (javadocableTrees.containsKey(token.pos())) { continue; } + + int endPos = 2; + while (comment.getText().charAt(endPos) == '*') { + endPos++; + } + state.reportMatch( describeMatch( getDiagnosticPosition(comment.getSourcePos(0), tree), - replace(comment.getSourcePos(1), comment.getSourcePos(2), ""))); + replace(comment.getSourcePos(1), comment.getSourcePos(endPos - 1), ""))); } } return NO_MATCH; diff --git a/core/src/test/java/com/google/errorprone/bugpatterns/javadoc/NotJavadocTest.java b/core/src/test/java/com/google/errorprone/bugpatterns/javadoc/NotJavadocTest.java index 0cf56242856..3e3ecb040b0 100644 --- a/core/src/test/java/com/google/errorprone/bugpatterns/javadoc/NotJavadocTest.java +++ b/core/src/test/java/com/google/errorprone/bugpatterns/javadoc/NotJavadocTest.java @@ -86,6 +86,28 @@ public void notJavadocOnLocalClass() { .doTest(TEXT_MATCH); } + @Test + public void notJavadocWithLotsOfAsterisks() { + helper + .addInputLines( + "Test.java", + "class Test {", + " void test() {", + " /******** Not Javadoc. */", + " class A {}", + " }", + "}") + .addOutputLines( + "Test.java", + "class Test {", + " void test() {", + " /* Not Javadoc. */", + " class A {}", + " }", + "}") + .doTest(TEXT_MATCH); + } + @Test public void actuallyJavadoc() { helper