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.checks.coding;
21
22 import org.junit.jupiter.api.Test;
23
24 import com.puppycrawl.tools.checkstyle.AbstractExamplesModuleTestSupport;
25
26 public class MatchXpathCheckExamplesTest extends AbstractExamplesModuleTestSupport {
27 @Override
28 protected String getPackageLocation() {
29 return "com/puppycrawl/tools/checkstyle/checks/coding/matchxpath";
30 }
31
32 @Test
33 public void testExample1() throws Exception {
34 final String[] expected = {
35 "19:3: " + "Private methods must appear after public methods",
36 "21:3: " + "Private methods must appear after public methods",
37 };
38
39 verifyWithInlineConfigParser(getPath("Example1.java"), expected);
40 }
41
42 @Test
43 public void testExample2() throws Exception {
44 final String[] expected = {
45 "19:3: " + "Parameterized constructors are not allowed",
46 "20:3: " + "Parameterized constructors are not allowed",
47 };
48
49 verifyWithInlineConfigParser(getPath("Example2.java"), expected);
50 }
51
52 @Test
53 public void testExample3() throws Exception {
54 final String[] expected = {
55 "17:3: " + "Method name should not be test or foo",
56 "19:3: " + "Method name should not be test or foo",
57 };
58
59 verifyWithInlineConfigParser(getPath("Example3.java"), expected);
60 }
61
62 @Test
63 public void testExample4() throws Exception {
64 final String[] expected = {
65 "20:5: " + "New instances should be created via var keyword"
66 + " "
67 + "to avoid duplication of type reference in statement",
68 };
69
70 verifyWithInlineConfigParser(getPath("Example4.java"), expected);
71 }
72 }