1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package com.puppycrawl.tools.checkstyle;
21
22 import static com.google.common.truth.Truth.assertWithMessage;
23
24 import java.io.File;
25 import java.nio.file.Files;
26 import java.nio.file.Path;
27
28 import org.junit.jupiter.api.Test;
29
30 import com.puppycrawl.tools.checkstyle.api.DetailAST;
31
32 public class JavadocDetailNodeParserTest extends AbstractModuleTestSupport {
33
34 @Override
35 protected String getPackageLocation() {
36 return "com/puppycrawl/tools/checkstyle/javadocdetailnodeparser";
37 }
38
39 @Test
40 public void testParseJavadocAsDetailNode() throws Exception {
41 final DetailAST ast = JavaParser.parseFile(
42 new File(getPath("InputJavadocDetailNodeParser.java")),
43 JavaParser.Options.WITH_COMMENTS)
44 .getFirstChild().getNextSibling().getFirstChild().getFirstChild();
45 final JavadocDetailNodeParser parser = new JavadocDetailNodeParser();
46 final JavadocDetailNodeParser.ParseStatus status = parser.parseJavadocAsDetailNode(ast);
47 final String actual = toLfLineEnding(DetailNodeTreeStringPrinter.printTree(status.getTree(),
48 "", ""));
49 final String expected = toLfLineEnding(Files.readString(Path.of(
50 getPath("ExpectedJavadocDetailNodeParser.txt"))));
51 assertWithMessage("Invalid parse result")
52 .that(actual)
53 .isEqualTo(expected);
54 }
55
56 }