1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.checkstyle.suppressionxpathfilter;
21
22 import java.io.File;
23 import java.util.Collections;
24 import java.util.List;
25
26 import org.junit.jupiter.api.Test;
27
28 import com.puppycrawl.tools.checkstyle.DefaultConfiguration;
29 import com.puppycrawl.tools.checkstyle.checks.imports.IllegalImportCheck;
30
31 public class XpathRegressionIllegalImportTest extends AbstractXpathTestSupport {
32
33 private final String checkName = IllegalImportCheck.class.getSimpleName();
34
35 @Override
36 protected String getCheckName() {
37 return checkName;
38 }
39
40 @Test
41 public void testDefault() throws Exception {
42 final File fileToProcess =
43 new File(getPath("InputXpathIllegalImportDefault.java"));
44 final DefaultConfiguration moduleConfig =
45 createModuleConfig(IllegalImportCheck.class);
46 moduleConfig.addProperty("illegalPkgs", "java.util");
47 final String[] expectedViolation = {
48 "3:1: " + getCheckMessage(IllegalImportCheck.class,
49 IllegalImportCheck.MSG_KEY, "java.util.List"),
50 };
51 final List<String> expectedXpathQueries = Collections.singletonList(
52 "/COMPILATION_UNIT/IMPORT"
53 );
54
55 runVerifications(moduleConfig, fileToProcess, expectedViolation,
56 expectedXpathQueries);
57 }
58
59 @Test
60 public void testStatic() throws Exception {
61 final File fileToProcess =
62 new File(getPath("InputXpathIllegalImportStatic.java"));
63 final DefaultConfiguration moduleConfig =
64 createModuleConfig(IllegalImportCheck.class);
65
66 moduleConfig.addProperty("illegalPkgs", "java.lang");
67
68 final String[] expectedViolation = {
69 "3:1: " + getCheckMessage(IllegalImportCheck.class,
70 IllegalImportCheck.MSG_KEY, "java.lang.Math.pow"),
71 };
72 final List<String> expectedXpathQueries = Collections.singletonList(
73 "/COMPILATION_UNIT/STATIC_IMPORT"
74
75 );
76
77 runVerifications(moduleConfig, fileToProcess, expectedViolation,
78 expectedXpathQueries);
79 }
80 }