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;
21
22 import static com.google.common.truth.Truth.assertWithMessage;
23 import static com.puppycrawl.tools.checkstyle.checks.HexLiteralCaseCheck.MSG_KEY;
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 HexLiteralCaseCheckTest
31 extends AbstractModuleTestSupport {
32
33 @Override
34 public String getPackageLocation() {
35 return "com/puppycrawl/tools/checkstyle/checks/hexliteralcase";
36 }
37
38 @Test
39 public void testGetRequiredTokens() {
40 final HexLiteralCaseCheck check = new HexLiteralCaseCheck();
41 final int[] expectedTokens = {TokenTypes.NUM_LONG, TokenTypes.NUM_INT,
42 TokenTypes.NUM_FLOAT, TokenTypes.NUM_DOUBLE,
43 };
44 assertWithMessage("Default required tokens are valid")
45 .that(check.getRequiredTokens())
46 .isEqualTo(expectedTokens);
47 }
48
49 @Test
50 public void testAcceptableTokens() {
51 final int[] expected = {TokenTypes.NUM_LONG, TokenTypes.NUM_INT,
52 TokenTypes.NUM_FLOAT, TokenTypes.NUM_DOUBLE,
53 };
54 final HexLiteralCaseCheck check = new HexLiteralCaseCheck();
55 final int[] actual = check.getAcceptableTokens();
56 assertWithMessage("Invalid size of tokens")
57 .that(actual.length)
58 .isEqualTo(4);
59 assertWithMessage("Default acceptable tokens are invalid")
60 .that(actual)
61 .isEqualTo(expected);
62 }
63
64 @Test
65 public void testCheck()
66 throws Exception {
67 final String[] expected = {
68 "10:13: " + getCheckMessage(MSG_KEY),
69 "12:14: " + getCheckMessage(MSG_KEY),
70 "14:16: " + getCheckMessage(MSG_KEY),
71 "16:16: " + getCheckMessage(MSG_KEY),
72 "19:21: " + getCheckMessage(MSG_KEY),
73 "21:22: " + getCheckMessage(MSG_KEY),
74 "23:14: " + getCheckMessage(MSG_KEY),
75 "25:15: " + getCheckMessage(MSG_KEY),
76 "27:15: " + getCheckMessage(MSG_KEY),
77 "30:14: " + getCheckMessage(MSG_KEY),
78 "31:14: " + getCheckMessage(MSG_KEY),
79
80 };
81 verifyWithInlineConfigParser(
82 getPath("InputHexLiteralCaseCheck.java"), expected
83 );
84 }
85
86 @Test
87 public void testCheck2()
88 throws Exception {
89 final String[] expected = {
90 "10:16: " + getCheckMessage(MSG_KEY),
91 "11:16: " + getCheckMessage(MSG_KEY),
92 "12:16: " + getCheckMessage(MSG_KEY),
93 "13:16: " + getCheckMessage(MSG_KEY),
94 "14:15: " + getCheckMessage(MSG_KEY),
95 "15:15: " + getCheckMessage(MSG_KEY),
96 "17:15: " + getCheckMessage(MSG_KEY),
97 "19:15: " + getCheckMessage(MSG_KEY),
98 "20:15: " + getCheckMessage(MSG_KEY),
99 "21:16: " + getCheckMessage(MSG_KEY),
100 };
101 verifyWithInlineConfigParser(
102 getPath("InputHexLiteralCaseCheck2.java"), expected
103 );
104 }
105
106 }