View Javadoc
1   ///////////////////////////////////////////////////////////////////////////////////////////////
2   // checkstyle: Checks Java source code and other text files for adherence to a set of rules.
3   // Copyright (C) 2001-2026 the original author or authors.
4   //
5   // This library is free software; you can redistribute it and/or
6   // modify it under the terms of the GNU Lesser General Public
7   // License as published by the Free Software Foundation; either
8   // version 2.1 of the License, or (at your option) any later version.
9   //
10  // This library is distributed in the hope that it will be useful,
11  // but WITHOUT ANY WARRANTY; without even the implied warranty of
12  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  // Lesser General Public License for more details.
14  //
15  // You should have received a copy of the GNU Lesser General Public
16  // License along with this library; if not, write to the Free Software
17  // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
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      public 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 testMethods1() throws
68              Exception {
69          final String[] expected = {
70              "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "mMissingJavadoc"),
71          };
72          verifyWithInlineConfigParser(
73                  getPath("InputJavadocVariableTagsMethods1.java"), expected);
74      }
75  
76      @Test
77      public void testMethods2()
78              throws Exception {
79          final String[] expected = CommonUtil.EMPTY_STRING_ARRAY;
80          verifyWithInlineConfigParser(
81                  getPath("InputJavadocVariableTagsMethods2.java"), expected);
82      }
83  
84      @Test
85      public void testMethods3()
86              throws Exception {
87          final String[] expected = CommonUtil.EMPTY_STRING_ARRAY;
88          verifyWithInlineConfigParser(
89                  getPath("InputJavadocVariableTagsMethods3.java"), expected);
90      }
91  
92      @Test
93      public void testEnums()
94              throws Exception {
95          final String[] expected = {
96              "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "CONSTANT_A"),
97              "22:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "CONSTANT_C"),
98              "41:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "A_CONSTANT"),
99              "77:38: " + getCheckMessage(MSG_JAVADOC_MISSING, "INVALID"),
100             "77:47: " + getCheckMessage(MSG_JAVADOC_MISSING, "CHECKED"),
101         };
102         verifyWithInlineConfigParser(
103                 getPath("InputJavadocVariableTagsEnums.java"), expected);
104     }
105 
106     @Test
107     public void testAnother()
108             throws Exception {
109         final String[] expected = {
110             "21:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "fData"),
111             "28:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "data"),
112             "34:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "rData"),
113         };
114         verifyWithInlineConfigParser(
115                 getPath("InputJavadocVariableInner.java"), expected);
116     }
117 
118     @Test
119     public void testAnother2()
120             throws Exception {
121         final String[] expected = {
122             "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "data"),
123         };
124         verifyWithInlineConfigParser(
125                 getPath("InputJavadocVariableInner2.java"), expected);
126     }
127 
128     @Test
129     public void testAnother3()
130             throws Exception {
131         final String[] expected = {
132             "15:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "CONST"),
133             "20:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "mData"),
134             "40:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "mDiff"),
135             "47:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "mSize"),
136             "48:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "mLen"),
137             "49:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "mDeer"),
138             "50:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "aFreddo"),
139         };
140         verifyWithInlineConfigParser(
141                 getPath("InputJavadocVariablePublicOnly.java"), expected);
142     }
143 
144     @Test
145     public void testAnother4()
146             throws Exception {
147         final String[] expected = {
148             "15:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "CONST"),
149             "50:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "aFreddo"),
150         };
151         verifyWithInlineConfigParser(
152                 getPath("InputJavadocVariablePublicOnly2.java"), expected);
153     }
154 
155     @Test
156     public void testJavadocVariableOnInnerClassFields() throws Exception {
157         final String[] expected = {
158             "13:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
159             "14:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
160             "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
161             "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
162             "24:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
163             "25:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
164             "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
165             "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
166             "36:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
167             "37:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
168             "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
169             "39:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
170             "48:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
171             "49:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
172             "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
173             "51:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
174         };
175         verifyWithInlineConfigParser(
176                 getPath("InputJavadocVariableOnInnerClassFields.java"),
177                expected);
178     }
179 
180     @Test
181     public void testJavadocVariableOnPublicInnerClassFields() throws Exception {
182         final String[] expected = {
183             "12:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
184             "13:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
185             "14:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
186             "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
187             "23:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
188             "24:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
189             "25:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
190             "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
191             "35:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
192             "36:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
193             "37:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
194             "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
195             "47:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
196             "48:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
197             "49:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
198             "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
199             "59:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
200             "60:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
201             "61:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
202             "62:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
203             "72:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "logger"),
204         };
205         verifyWithInlineConfigParser(
206                 getPath("InputJavadocVariableOnPublicInnerClassFields.java"),
207                expected);
208     }
209 
210     @Test
211     public void testAccessModifiersPublicProtectedPublic() throws Exception {
212         final String[] expected = {
213             "13:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
214             "14:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
215             "24:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
216             "25:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
217             "36:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
218             "37:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
219             "48:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
220             "49:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
221         };
222         verifyWithInlineConfigParser(
223                 getPath("InputJavadocVariableNoJavadoc2Public.java"), expected);
224     }
225 
226     @Test
227     public void testAccessModifiersPublicProtectedPackage() throws Exception {
228         final String[] expected = {
229             "13:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
230             "14:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
231             "24:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
232             "25:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
233             "36:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
234             "37:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
235             "48:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
236             "49:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
237             "60:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
238             "61:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
239             "82:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "CONSTANT"),
240         };
241         verifyWithInlineConfigParser(
242                 getPath("InputJavadocVariableNoJavadoc2Package.java"), expected);
243     }
244 
245     @Test
246     public void testAccessModifiersPackagePrivatePublic() throws Exception {
247         final String[] expected = {
248             "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
249             "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
250             "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
251             "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
252             "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
253             "39:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
254             "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
255             "51:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
256         };
257         verifyWithInlineConfigParser(
258                 getPath("InputJavadocVariableNoJavadoc3Public.java"), expected);
259     }
260 
261     @Test
262     public void testAccessModifiersPackagePrivatePackage() throws Exception {
263         final String[] expected = {
264             "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
265             "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
266             "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
267             "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
268             "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
269             "39:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
270             "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
271             "51:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
272             "62:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
273             "63:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
274             "73:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "logger"),
275         };
276         verifyWithInlineConfigParser(
277                 getPath("InputJavadocVariableNoJavadoc3Package.java"), expected);
278     }
279 
280     @Test
281     public void testIgnoredVariableNames()
282             throws Exception {
283         final String[] expected = {
284             "13:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
285             "14:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
286             "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
287             "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
288             "24:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
289             "25:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
290             "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
291             "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
292             "36:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
293             "37:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
294             "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
295             "39:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
296             "48:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
297             "49:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
298             "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
299             "51:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
300         };
301         verifyWithInlineConfigParser(
302                 getPath("InputJavadocVariableOnIgnoredVariableNames.java"),
303                 expected);
304     }
305 
306     @Test
307     public void testIgnoredVariableNames2()
308             throws Exception {
309         final String[] expected = {
310             "14:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
311             "15:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
312             "16:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
313             "17:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
314             "25:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
315             "26:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
316             "27:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
317             "28:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
318             "37:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
319             "38:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
320             "39:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
321             "40:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
322             "49:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
323             "50:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
324             "51:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
325             "52:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
326             "61:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
327             "62:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
328             "63:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
329             "64:13: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
330         };
331         verifyWithInlineConfigParser(
332                 getPath("InputJavadocVariableOnIgnoredVariableNames2.java"),
333                 expected);
334     }
335 
336     @Test
337     public void testDoNotIgnoreAnythingWhenIgnoreNamePatternIsEmptyPublic() throws Exception {
338         final String[] expected = {
339             "13:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
340             "14:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
341             "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
342             "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
343             "24:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
344             "25:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
345             "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
346             "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
347             "36:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
348             "37:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
349             "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
350             "39:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
351             "48:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
352             "49:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
353             "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
354             "51:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
355         };
356         verifyWithInlineConfigParser(
357                 getPath("InputJavadocVariableNoJavadoc5Public.java"), expected);
358     }
359 
360     @Test
361     public void testDoNotIgnoreAnythingWhenIgnoreNamePatternIsEmptyPackage() throws Exception {
362         final String[] expected = {
363             "13:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
364             "14:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
365             "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
366             "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
367             "24:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
368             "25:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
369             "26:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
370             "27:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
371             "36:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
372             "37:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
373             "38:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
374             "39:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
375             "48:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
376             "49:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
377             "50:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
378             "51:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
379             "60:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i1"),
380             "61:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i2"),
381             "62:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i3"),
382             "63:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "i4"),
383             "73:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "logger"),
384         };
385         verifyWithInlineConfigParser(
386                 getPath("InputJavadocVariableNoJavadoc5Package.java"), expected);
387     }
388 
389     @Test
390     public void testLambdaLocalVariablesDoNotNeedJavadoc() throws Exception {
391         final String[] expected = {
392             "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "FUNCTION1"),
393         };
394         verifyWithInlineConfigParser(
395                 getPath("InputJavadocVariableNoJavadocNeededInLambda.java"),
396                 expected);
397     }
398 
399     @Test
400     public void testInterfaceMemberScopeIsPublic() throws Exception {
401         final String[] expected = {
402             "16:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "field2"),
403             "18:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "field3"),
404             "25:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "B"),
405         };
406         verifyWithInlineConfigParser(
407                 getPath("InputJavadocVariableInterfaceMemberScopeIsPublic.java"),
408                 expected);
409     }
410 
411     @Test
412     public void testMethodInnerClass() throws Exception {
413         final String[] expected = {
414             "12:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "variablePublic"),
415             "13:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "variableProtected"),
416             "14:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "variablePackage"),
417             "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "variablePrivate"),
418         };
419         verifyWithInlineConfigParser(
420             getPath("InputJavadocVariableMethodInnerClass.java"),
421             expected);
422     }
423 
424     @Test
425     public void testJavadocVariableAboveComment() throws Exception {
426         final String[] expected = {
427             "26:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "x"),
428         };
429         verifyWithInlineConfigParser(
430             getPath("InputJavadocVariableAboveComment.java"),
431             expected);
432     }
433 
434     @Test
435     public void testJavadocVariableOddCases() throws Exception {
436         final String[] expected = {
437             "15:5: " + getCheckMessage(MSG_JAVADOC_MISSING, "field22"),
438             "21:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "INVALID"),
439             "21:18: " + getCheckMessage(MSG_JAVADOC_MISSING, "CHECKED"),
440             "43:9: " + getCheckMessage(MSG_JAVADOC_MISSING, "pinned"),
441         };
442         verifyWithInlineConfigParser(
443             getPath("InputJavadocVariableOddCases.java"),
444             expected);
445     }
446 
447 }