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.filters;
21
22 import org.junit.jupiter.api.Test;
23
24 import com.puppycrawl.tools.checkstyle.AbstractExamplesModuleTestSupport;
25
26 public class SuppressionFilterExamplesTest extends AbstractExamplesModuleTestSupport {
27 @Override
28 protected String getPackageLocation() {
29 return "com/puppycrawl/tools/checkstyle/filters/suppressionfilter";
30 }
31
32 @Test
33 public void testExample1() throws Exception {
34
35 final String[] expectedWithoutFilter = {
36 "20: First sentence should end with a period.",
37 "23:11: '10' is a magic number.",
38 "27:15: '100' is a magic number.",
39 "29:15: Must have at least one statement.",
40 };
41
42 final String[] expectedWithFilter = {
43 "29:15: Must have at least one statement.",
44 };
45
46 verifyFilterWithInlineConfigParser(getPath("Example1.java"),
47 expectedWithoutFilter,
48 expectedWithFilter);
49 }
50
51 @Test
52 public void testExample2() throws Exception {
53
54 final String[] expectedWithoutFilter = {
55 "23: Line is longer than 80 characters (found 84).",
56 "30:22: String literal expressions should be on the left side of an equals comparison.",
57 "34:32: String literal expressions should be on the left side of "
58 + "an equalsIgnoreCase comparison.",
59 };
60
61 final String[] expectedWithFilter = {
62 "23: Line is longer than 80 characters (found 84).",
63 };
64
65 verifyFilterWithInlineConfigParser(getPath("Example2.java"),
66 expectedWithoutFilter,
67 expectedWithFilter);
68 }
69
70 @Test
71 public void testExample3() throws Exception {
72
73 final String[] expectedWithoutFilter = {
74 "1: Duplicated property 'keyB' (2 occurrence(s)).",
75 "4: Duplicated property 'keyC' (2 occurrence(s)).",
76 };
77
78 final String[] expectedWithFilter = {};
79
80 verifyFilterWithInlineConfigParserSeparateConfigAndTarget(
81 getPath("Example3.java"),
82 getPath(".hidden/hidden.properties"),
83 expectedWithoutFilter,
84 expectedWithFilter);
85 }
86
87 @Test
88 public void testExample4() throws Exception {
89
90 final String[] expectedWithoutFilter = {
91 "20:14: Name 'log' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'.",
92 "23:14: Name 'constant' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'.",
93 "29:27: Name 'log' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'.",
94 "32:30: Name 'line' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'.",
95 };
96
97 final String[] expectedWithFilter = {
98 "23:14: Name 'constant' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'.",
99 "32:30: Name 'line' must match pattern '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'.",
100 };
101
102 verifyFilterWithInlineConfigParser(getPath("Example4.java"),
103 expectedWithoutFilter, expectedWithFilter);
104 }
105 }