View Javadoc
1   ////////////////////////////////////////////////////////////////////////////////
2   // checkstyle: Checks Java source code for adherence to a set of rules.
3   // Copyright (C) 2001-2018 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.api;
21  
22  import static com.puppycrawl.tools.checkstyle.internal.utils.TestUtil.isUtilsClassHasPrivateConstructor;
23  import static org.junit.Assert.assertEquals;
24  import static org.junit.Assert.assertTrue;
25  
26  import java.lang.reflect.Field;
27  
28  import org.junit.Test;
29  
30  public class JavadocTokenTypesTest {
31  
32      @Test
33      public void testIsProperUtilsClass() throws ReflectiveOperationException {
34          assertTrue("Constructor is not private",
35                  isUtilsClassHasPrivateConstructor(JavadocTokenTypes.class, true));
36      }
37  
38      @Test
39      public void testTokenValues() {
40          final String msg = "Please ensure that token values in `JavadocTokenTypes.java` have not"
41                  + " changed.";
42          assertEquals(msg, 11, JavadocTokenTypes.RETURN_LITERAL);
43          assertEquals(msg, 8, JavadocTokenTypes.DEPRECATED_LITERAL);
44          assertEquals(msg, 16, JavadocTokenTypes.SINCE_LITERAL);
45          assertEquals(msg, 15, JavadocTokenTypes.SERIAL_DATA_LITERAL);
46          assertEquals(msg, 14, JavadocTokenTypes.SERIAL_FIELD_LITERAL);
47          assertEquals(msg, 10, JavadocTokenTypes.PARAM_LITERAL);
48          assertEquals(msg, 12, JavadocTokenTypes.SEE_LITERAL);
49          assertEquals(msg, 13, JavadocTokenTypes.SERIAL_LITERAL);
50          assertEquals(msg, 18, JavadocTokenTypes.VERSION_LITERAL);
51          assertEquals(msg, 9, JavadocTokenTypes.EXCEPTION_LITERAL);
52          assertEquals(msg, 17, JavadocTokenTypes.THROWS_LITERAL);
53          assertEquals(msg, 7, JavadocTokenTypes.AUTHOR_LITERAL);
54          assertEquals(msg, 21, JavadocTokenTypes.CUSTOM_NAME);
55          assertEquals(msg, 19, JavadocTokenTypes.JAVADOC_INLINE_TAG_START);
56          assertEquals(msg, 20, JavadocTokenTypes.JAVADOC_INLINE_TAG_END);
57          assertEquals(msg, 45, JavadocTokenTypes.CODE_LITERAL);
58          assertEquals(msg, 46, JavadocTokenTypes.DOC_ROOT_LITERAL);
59          assertEquals(msg, 48, JavadocTokenTypes.LINK_LITERAL);
60          assertEquals(msg, 47, JavadocTokenTypes.INHERIT_DOC_LITERAL);
61          assertEquals(msg, 49, JavadocTokenTypes.LINKPLAIN_LITERAL);
62          assertEquals(msg, 50, JavadocTokenTypes.LITERAL_LITERAL);
63          assertEquals(msg, 51, JavadocTokenTypes.VALUE_LITERAL);
64          assertEquals(msg, 28, JavadocTokenTypes.PACKAGE_CLASS);
65          assertEquals(msg, 30, JavadocTokenTypes.HASH);
66          assertEquals(msg, 33, JavadocTokenTypes.MEMBER);
67          assertEquals(msg, 34, JavadocTokenTypes.LEFT_BRACE);
68          assertEquals(msg, 35, JavadocTokenTypes.RIGHT_BRACE);
69          assertEquals(msg, 36, JavadocTokenTypes.ARGUMENT);
70          assertEquals(msg, 37, JavadocTokenTypes.COMMA);
71          assertEquals(msg, 27, JavadocTokenTypes.STRING);
72          assertEquals(msg, 43, JavadocTokenTypes.CLASS_NAME);
73          assertEquals(msg, 25, JavadocTokenTypes.PARAMETER_NAME);
74          assertEquals(msg, 23, JavadocTokenTypes.LITERAL_EXCLUDE);
75          assertEquals(msg, 22, JavadocTokenTypes.LITERAL_INCLUDE);
76          assertEquals(msg, 39, JavadocTokenTypes.FIELD_NAME);
77          assertEquals(msg, 41, JavadocTokenTypes.FIELD_TYPE);
78          assertEquals(msg, 95, JavadocTokenTypes.HTML_TAG_NAME);
79          assertEquals(msg, 5, JavadocTokenTypes.START);
80          assertEquals(msg, 57, JavadocTokenTypes.SLASH);
81          assertEquals(msg, 55, JavadocTokenTypes.END);
82          assertEquals(msg, 56, JavadocTokenTypes.SLASH_END);
83          assertEquals(msg, 58, JavadocTokenTypes.EQUALS);
84          assertEquals(msg, 89, JavadocTokenTypes.ATTR_VALUE);
85          assertEquals(msg, 59, JavadocTokenTypes.P_HTML_TAG_NAME);
86          assertEquals(msg, 60, JavadocTokenTypes.LI_HTML_TAG_NAME);
87          assertEquals(msg, 61, JavadocTokenTypes.TR_HTML_TAG_NAME);
88          assertEquals(msg, 62, JavadocTokenTypes.TD_HTML_TAG_NAME);
89          assertEquals(msg, 63, JavadocTokenTypes.TH_HTML_TAG_NAME);
90          assertEquals(msg, 64, JavadocTokenTypes.BODY_HTML_TAG_NAME);
91          assertEquals(msg, 65, JavadocTokenTypes.COLGROUP_HTML_TAG_NAME);
92          assertEquals(msg, 66, JavadocTokenTypes.DD_HTML_TAG_NAME);
93          assertEquals(msg, 67, JavadocTokenTypes.DT_HTML_TAG_NAME);
94          assertEquals(msg, 68, JavadocTokenTypes.HEAD_HTML_TAG_NAME);
95          assertEquals(msg, 69, JavadocTokenTypes.HTML_HTML_TAG_NAME);
96          assertEquals(msg, 70, JavadocTokenTypes.OPTION_HTML_TAG_NAME);
97          assertEquals(msg, 71, JavadocTokenTypes.TBODY_HTML_TAG_NAME);
98          assertEquals(msg, 72, JavadocTokenTypes.TFOOT_HTML_TAG_NAME);
99          assertEquals(msg, 73, JavadocTokenTypes.THEAD_HTML_TAG_NAME);
100         assertEquals(msg, 74, JavadocTokenTypes.AREA_HTML_TAG_NAME);
101         assertEquals(msg, 75, JavadocTokenTypes.BASE_HTML_TAG_NAME);
102         assertEquals(msg, 76, JavadocTokenTypes.BASEFONT_HTML_TAG_NAME);
103         assertEquals(msg, 77, JavadocTokenTypes.BR_HTML_TAG_NAME);
104         assertEquals(msg, 78, JavadocTokenTypes.COL_HTML_TAG_NAME);
105         assertEquals(msg, 79, JavadocTokenTypes.FRAME_HTML_TAG_NAME);
106         assertEquals(msg, 80, JavadocTokenTypes.HR_HTML_TAG_NAME);
107         assertEquals(msg, 81, JavadocTokenTypes.IMG_HTML_TAG_NAME);
108         assertEquals(msg, 82, JavadocTokenTypes.INPUT_HTML_TAG_NAME);
109         assertEquals(msg, 83, JavadocTokenTypes.ISINDEX_HTML_TAG_NAME);
110         assertEquals(msg, 84, JavadocTokenTypes.LINK_HTML_TAG_NAME);
111         assertEquals(msg, 85, JavadocTokenTypes.META_HTML_TAG_NAME);
112         assertEquals(msg, 86, JavadocTokenTypes.PARAM_HTML_TAG_NAME);
113         assertEquals(msg, 87, JavadocTokenTypes.EMBED_HTML_TAG_NAME);
114         assertEquals(msg, 88, JavadocTokenTypes.KEYGEN_HTML_TAG_NAME);
115         assertEquals(msg, 92, JavadocTokenTypes.SOURCE_HTML_TAG_NAME);
116         assertEquals(msg, 93, JavadocTokenTypes.TRACK_HTML_TAG_NAME);
117         assertEquals(msg, 94, JavadocTokenTypes.WBR_HTML_TAG_NAME);
118         assertEquals(msg, 2, JavadocTokenTypes.HTML_COMMENT_START);
119         assertEquals(msg, 91, JavadocTokenTypes.HTML_COMMENT_END);
120         assertEquals(msg, 3, JavadocTokenTypes.CDATA);
121         assertEquals(msg, 1, JavadocTokenTypes.LEADING_ASTERISK);
122         assertEquals(msg, 6, JavadocTokenTypes.NEWLINE);
123         assertEquals(msg, 24, JavadocTokenTypes.CHAR);
124         assertEquals(msg, 4, JavadocTokenTypes.WS);
125         assertEquals(msg, -1, JavadocTokenTypes.EOF);
126         assertEquals(msg, 10000, JavadocTokenTypes.JAVADOC);
127         assertEquals(msg, 10071, JavadocTokenTypes.JAVADOC_TAG);
128         assertEquals(msg, 10072, JavadocTokenTypes.JAVADOC_INLINE_TAG);
129         assertEquals(msg, 10069, JavadocTokenTypes.REFERENCE);
130         assertEquals(msg, 10070, JavadocTokenTypes.PARAMETERS);
131         assertEquals(msg, 10068, JavadocTokenTypes.DESCRIPTION);
132         assertEquals(msg, 10001, JavadocTokenTypes.HTML_ELEMENT);
133         assertEquals(msg, 10002, JavadocTokenTypes.HTML_ELEMENT_START);
134         assertEquals(msg, 10003, JavadocTokenTypes.HTML_ELEMENT_END);
135         assertEquals(msg, 10005, JavadocTokenTypes.HTML_TAG);
136         assertEquals(msg, 10004, JavadocTokenTypes.ATTRIBUTE);
137         assertEquals(msg, 10008, JavadocTokenTypes.PARAGRAPH);
138         assertEquals(msg, 10006, JavadocTokenTypes.P_TAG_START);
139         assertEquals(msg, 10007, JavadocTokenTypes.P_TAG_END);
140         assertEquals(msg, 10011, JavadocTokenTypes.LI);
141         assertEquals(msg, 10009, JavadocTokenTypes.LI_TAG_START);
142         assertEquals(msg, 10010, JavadocTokenTypes.LI_TAG_END);
143         assertEquals(msg, 10014, JavadocTokenTypes.TR);
144         assertEquals(msg, 10012, JavadocTokenTypes.TR_TAG_START);
145         assertEquals(msg, 10013, JavadocTokenTypes.TR_TAG_END);
146         assertEquals(msg, 10017, JavadocTokenTypes.TD);
147         assertEquals(msg, 10015, JavadocTokenTypes.TD_TAG_START);
148         assertEquals(msg, 10016, JavadocTokenTypes.TD_TAG_END);
149         assertEquals(msg, 10020, JavadocTokenTypes.TH);
150         assertEquals(msg, 10018, JavadocTokenTypes.TH_TAG_START);
151         assertEquals(msg, 10019, JavadocTokenTypes.TH_TAG_END);
152         assertEquals(msg, 10023, JavadocTokenTypes.BODY);
153         assertEquals(msg, 10021, JavadocTokenTypes.BODY_TAG_START);
154         assertEquals(msg, 10022, JavadocTokenTypes.BODY_TAG_END);
155         assertEquals(msg, 10026, JavadocTokenTypes.COLGROUP);
156         assertEquals(msg, 10024, JavadocTokenTypes.COLGROUP_TAG_START);
157         assertEquals(msg, 10025, JavadocTokenTypes.COLGROUP_TAG_END);
158         assertEquals(msg, 10029, JavadocTokenTypes.DD);
159         assertEquals(msg, 10027, JavadocTokenTypes.DD_TAG_START);
160         assertEquals(msg, 10028, JavadocTokenTypes.DD_TAG_END);
161         assertEquals(msg, 10032, JavadocTokenTypes.DT);
162         assertEquals(msg, 10030, JavadocTokenTypes.DT_TAG_START);
163         assertEquals(msg, 10031, JavadocTokenTypes.DT_TAG_END);
164         assertEquals(msg, 10035, JavadocTokenTypes.HEAD);
165         assertEquals(msg, 10033, JavadocTokenTypes.HEAD_TAG_START);
166         assertEquals(msg, 10034, JavadocTokenTypes.HEAD_TAG_END);
167         assertEquals(msg, 10038, JavadocTokenTypes.HTML);
168         assertEquals(msg, 10036, JavadocTokenTypes.HTML_TAG_START);
169         assertEquals(msg, 10037, JavadocTokenTypes.HTML_TAG_END);
170         assertEquals(msg, 10041, JavadocTokenTypes.OPTION);
171         assertEquals(msg, 10039, JavadocTokenTypes.OPTION_TAG_START);
172         assertEquals(msg, 10040, JavadocTokenTypes.OPTION_TAG_END);
173         assertEquals(msg, 10044, JavadocTokenTypes.TBODY);
174         assertEquals(msg, 10042, JavadocTokenTypes.TBODY_TAG_START);
175         assertEquals(msg, 10043, JavadocTokenTypes.TBODY_TAG_END);
176         assertEquals(msg, 10047, JavadocTokenTypes.TFOOT);
177         assertEquals(msg, 10045, JavadocTokenTypes.TFOOT_TAG_START);
178         assertEquals(msg, 10046, JavadocTokenTypes.TFOOT_TAG_END);
179         assertEquals(msg, 10050, JavadocTokenTypes.THEAD);
180         assertEquals(msg, 10048, JavadocTokenTypes.THEAD_TAG_START);
181         assertEquals(msg, 10049, JavadocTokenTypes.THEAD_TAG_END);
182         assertEquals(msg, 10051, JavadocTokenTypes.SINGLETON_ELEMENT);
183         assertEquals(msg, 10052, JavadocTokenTypes.EMPTY_TAG);
184         assertEquals(msg, 10053, JavadocTokenTypes.AREA_TAG);
185         assertEquals(msg, 10054, JavadocTokenTypes.BASE_TAG);
186         assertEquals(msg, 10055, JavadocTokenTypes.BASEFONT_TAG);
187         assertEquals(msg, 10056, JavadocTokenTypes.BR_TAG);
188         assertEquals(msg, 10057, JavadocTokenTypes.COL_TAG);
189         assertEquals(msg, 10058, JavadocTokenTypes.FRAME_TAG);
190         assertEquals(msg, 10059, JavadocTokenTypes.HR_TAG);
191         assertEquals(msg, 10060, JavadocTokenTypes.IMG_TAG);
192         assertEquals(msg, 10061, JavadocTokenTypes.INPUT_TAG);
193         assertEquals(msg, 10062, JavadocTokenTypes.ISINDEX_TAG);
194         assertEquals(msg, 10063, JavadocTokenTypes.LINK_TAG);
195         assertEquals(msg, 10064, JavadocTokenTypes.META_TAG);
196         assertEquals(msg, 10065, JavadocTokenTypes.PARAM_TAG);
197         assertEquals(msg, 10075, JavadocTokenTypes.EMBED_TAG);
198         assertEquals(msg, 10076, JavadocTokenTypes.KEYGEN_TAG);
199         assertEquals(msg, 10077, JavadocTokenTypes.SOURCE_TAG);
200         assertEquals(msg, 10078, JavadocTokenTypes.TRACK_TAG);
201         assertEquals(msg, 10079, JavadocTokenTypes.WBR_TAG);
202         assertEquals(msg, 10073, JavadocTokenTypes.HTML_COMMENT);
203         assertEquals(msg, 10074, JavadocTokenTypes.TEXT);
204     }
205 
206     @Test
207     public void testRuleOffsetValue() throws Exception {
208         final Field ruleTypesOffset = JavadocTokenTypes.class.getDeclaredField("RULE_TYPES_OFFSET");
209         ruleTypesOffset.setAccessible(true);
210         assertEquals("Please ensure that the field `RULE_TYPES_OFFSET` in"
211                 + " `JavadocTokenTypes.java` has a value of 10000",
212                 10000, ruleTypesOffset.getInt(null));
213     }
214 
215 }