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.naming;
21
22 import static com.google.common.truth.Truth.assertWithMessage;
23 import static com.puppycrawl.tools.checkstyle.checks.naming.AbstractNameCheck.MSG_INVALID_PATTERN;
24
25 import org.junit.jupiter.api.Test;
26
27 import com.puppycrawl.tools.checkstyle.AbstractModuleTestSupport;
28 import com.puppycrawl.tools.checkstyle.api.TokenTypes;
29
30 public class InterfaceTypeParameterNameCheckTest
31 extends AbstractModuleTestSupport {
32
33 @Override
34 protected String getPackageLocation() {
35 return "com/puppycrawl/tools/checkstyle/checks/naming/interfacetypeparametername";
36 }
37
38 @Test
39 public void testGetAcceptableTokens() {
40 final InterfaceTypeParameterNameCheck interfaceTypeParameterNameCheck =
41 new InterfaceTypeParameterNameCheck();
42 final int[] expected = {TokenTypes.TYPE_PARAMETER};
43
44 assertWithMessage("Default acceptable tokens are invalid")
45 .that(interfaceTypeParameterNameCheck.getAcceptableTokens())
46 .isEqualTo(expected);
47 }
48
49 @Test
50 public void testGetRequiredTokens() {
51 final InterfaceTypeParameterNameCheck checkObj =
52 new InterfaceTypeParameterNameCheck();
53 final int[] expected = {TokenTypes.TYPE_PARAMETER};
54 assertWithMessage("Default required tokens are invalid")
55 .that(checkObj.getRequiredTokens())
56 .isEqualTo(expected);
57 }
58
59 @Test
60 public void testInterfaceDefault()
61 throws Exception {
62
63 final String pattern = "^[A-Z]$";
64
65 final String[] expected = {
66 "55:15: " + getCheckMessage(MSG_INVALID_PATTERN, "Input", pattern),
67 };
68 verifyWithInlineConfigParser(
69 getPath("InputInterfaceTypeParameterName.java"), expected);
70 }
71
72 @Test
73 public void testInterfaceFooName()
74 throws Exception {
75
76 final String pattern = "^foo$";
77
78 final String[] expected = {
79 "55:16: " + getCheckMessage(MSG_INVALID_PATTERN, "Input", pattern),
80 "59:25: " + getCheckMessage(MSG_INVALID_PATTERN, "T", pattern),
81 };
82 verifyWithInlineConfigParser(
83 getPath("InputInterfaceTypeParameterName1.java"), expected);
84 }
85
86 }