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.javadoc;
21
22 import static com.google.common.truth.Truth.assertWithMessage;
23 import static com.puppycrawl.tools.checkstyle.checks.javadoc.JavadocVariableCheck.MSG_JAVADOC_MISSING;
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 import com.puppycrawl.tools.checkstyle.utils.CommonUtil;
30
31 public class JavadocVariableCheckTest
32 extends AbstractModuleTestSupport {
33
34 @Override
35 protected String getPackageLocation() {
36 return "com/puppycrawl/tools/checkstyle/checks/javadoc/javadocvariable";
37 }
38
39 @Test
40 public void testGetRequiredTokens() {
41 final JavadocVariableCheck javadocVariableCheck = new JavadocVariableCheck();
42 final int[] actual = javadocVariableCheck.getRequiredTokens();
43 final int[] expected = {
44 TokenTypes.VARIABLE_DEF,
45 };
46 assertWithMessage("Default required tokens are invalid")
47 .that(actual)
48 .isEqualTo(expected);
49 }
50
51 @Test
52 public void testGetAcceptableTokens() {
53 final JavadocVariableCheck javadocVariableCheck = new JavadocVariableCheck();
54
55 final int[] actual = javadocVariableCheck.getAcceptableTokens();
56 final int[] expected = {
57 TokenTypes.VARIABLE_DEF,
58 TokenTypes.ENUM_CONSTANT_DEF,
59 };
60
61 assertWithMessage("Default acceptable tokens are invalid")
62 .that(actual)
63 .isEqualTo(expected);
64 }
65
66 @Test
67 public void testDefault()
68 throws Exception {
69 final String[] expected = {
70 "18:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
71 "311:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
72 "318:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
73 "337:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
74 };
75 verifyWithInlineConfigParser(
76 getPath("InputJavadocVariableTags.java"), expected);
77 }
78
79 @Test
80 public void testAnother()
81 throws Exception {
82 final String[] expected = {
83 "23:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
84 "30:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
85 "36:13: " + getCheckMessage(MSG_JAVADOC_MISSING),
86 };
87 verifyWithInlineConfigParser(
88 getPath("InputJavadocVariableInner.java"), expected);
89 }
90
91 @Test
92 public void testAnother2()
93 throws Exception {
94 final String[] expected = CommonUtil.EMPTY_STRING_ARRAY;
95 verifyWithInlineConfigParser(
96 getPath("InputJavadocVariableInner2.java"), expected);
97 }
98
99 @Test
100 public void testAnother3()
101 throws Exception {
102 final String[] expected = {
103 "17:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
104 "22:13: " + getCheckMessage(MSG_JAVADOC_MISSING),
105 "42:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
106 "49:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
107 "50:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
108 "51:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
109 "52:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
110 };
111 verifyWithInlineConfigParser(
112 getPath("InputJavadocVariablePublicOnly.java"), expected);
113 }
114
115 @Test
116 public void testAnother4()
117 throws Exception {
118 final String[] expected = {
119 "52:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
120 };
121 verifyWithInlineConfigParser(
122 getPath("InputJavadocVariablePublicOnly2.java"), expected);
123 }
124
125 @Test
126 public void testJavadocVariableOnInnerClassFields() throws Exception {
127 final String[] expected = {
128 "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
129 "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
130 "17:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
131 "18:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
132 "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
133 "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
134 "28:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
135 "29:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
136 "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
137 "39:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
138 "40:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
139 "41:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
140 "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
141 "51:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
142 "52:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
143 "53:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
144 };
145 verifyWithInlineConfigParser(
146 getPath("InputJavadocVariableOnInnerClassFields.java"),
147 expected);
148 }
149
150 @Test
151 public void testJavadocVariableOnPublicInnerClassFields() throws Exception {
152 final String[] expected = {
153 "14:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
154 "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
155 "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
156 "17:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
157 "25:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
158 "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
159 "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
160 "28:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
161 "37:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
162 "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
163 "39:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
164 "40:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
165 "49:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
166 "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
167 "51:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
168 "52:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
169 "61:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
170 "62:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
171 "63:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
172 "64:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
173 "74:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
174 };
175 verifyWithInlineConfigParser(
176 getPath("InputJavadocVariableOnPublicInnerClassFields.java"),
177 expected);
178 }
179
180 @Test
181 public void testScopes2() throws Exception {
182 final String[] expected = {
183 "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
184 "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
185 "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
186 "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
187 };
188 verifyWithInlineConfigParser(
189 getPath("InputJavadocVariableNoJavadoc2.java"),
190 expected);
191 }
192
193 @Test
194 public void testExcludeScope() throws Exception {
195 final String[] expected = {
196 "17:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
197 "18:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
198 "28:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
199 "29:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
200 "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
201 "39:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
202 "40:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
203 "41:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
204 "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
205 "51:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
206 "52:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
207 "53:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
208 "63:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
209 "64:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
210 "65:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
211 "66:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
212 "74:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
213 "75:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
214 "76:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
215 "77:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
216 "86:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
217 "87:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
218 "88:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
219 "89:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
220 "98:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
221 "99:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
222 "100:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
223 "101:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
224 "110:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
225 "111:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
226 "112:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
227 "113:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
228 "123:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
229 };
230 verifyWithInlineConfigParser(
231 getPath("InputJavadocVariableNoJavadoc3.java"),
232 expected);
233 }
234
235 @Test
236 public void testIgnoredVariableNames()
237 throws Exception {
238 final String[] expected = {
239 "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
240 "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
241 "17:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
242 "18:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
243 "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
244 "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
245 "28:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
246 "29:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
247 "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
248 "39:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
249 "40:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
250 "41:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
251 "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
252 "51:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
253 "52:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
254 "53:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
255 "63:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
256 "64:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
257 "65:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
258 "66:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
259 "74:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
260 "75:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
261 "76:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
262 "77:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
263 "86:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
264 "87:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
265 "88:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
266 "89:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
267 "98:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
268 "99:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
269 "100:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
270 "101:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
271 "110:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
272 "111:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
273 "112:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
274 "113:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
275 };
276 verifyWithInlineConfigParser(
277 getPath("InputJavadocVariableNoJavadoc4.java"),
278 expected);
279 }
280
281 @Test
282 public void testDoNotIgnoreAnythingWhenIgnoreNamePatternIsEmpty()
283 throws Exception {
284 final String[] expected = {
285 "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
286 "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
287 "17:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
288 "18:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
289 "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
290 "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
291 "28:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
292 "29:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
293 "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
294 "39:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
295 "40:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
296 "41:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
297 "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
298 "51:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
299 "52:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
300 "53:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
301 "63:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
302 "64:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
303 "65:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
304 "66:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
305 "74:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
306 "75:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
307 "76:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
308 "77:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
309 "86:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
310 "87:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
311 "88:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
312 "89:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
313 "98:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
314 "99:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
315 "100:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
316 "101:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
317 "110:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
318 "111:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
319 "112:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
320 "113:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
321 "123:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
322 };
323 verifyWithInlineConfigParser(
324 getPath("InputJavadocVariableNoJavadoc5.java"),
325 expected);
326 }
327
328 @Test
329 public void testLambdaLocalVariablesDoNotNeedJavadoc() throws Exception {
330 final String[] expected = {
331 "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
332 };
333 verifyWithInlineConfigParser(
334 getPath("InputJavadocVariableNoJavadocNeededInLambda.java"),
335 expected);
336 }
337
338 @Test
339 public void testInterfaceMemberScopeIsPublic() throws Exception {
340 final String[] expected = {
341 "18:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
342 "20:5: " + getCheckMessage(MSG_JAVADOC_MISSING),
343 "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING),
344 };
345 verifyWithInlineConfigParser(
346 getPath("InputJavadocVariableInterfaceMemberScopeIsPublic.java"),
347 expected);
348 }
349
350 }