View Javadoc
1   ///////////////////////////////////////////////////////////////////////////////////////////////
2   // checkstyle: Checks Java source code and other text files for adherence to a set of rules.
3   // Copyright (C) 2001-2024 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.whitespace;
21  
22  import static com.puppycrawl.tools.checkstyle.checks.whitespace.EmptyLineSeparatorCheck.MSG_MULTIPLE_LINES;
23  import static com.puppycrawl.tools.checkstyle.checks.whitespace.EmptyLineSeparatorCheck.MSG_MULTIPLE_LINES_INSIDE;
24  import static com.puppycrawl.tools.checkstyle.checks.whitespace.EmptyLineSeparatorCheck.MSG_SHOULD_BE_SEPARATED;
25  
26  import org.junit.jupiter.api.Test;
27  
28  import com.puppycrawl.tools.checkstyle.AbstractExamplesModuleTestSupport;
29  
30  public class EmptyLineSeparatorExamplesTest extends AbstractExamplesModuleTestSupport {
31      @Override
32      protected String getPackageLocation() {
33          return "com/puppycrawl/tools/checkstyle/checks/whitespace/emptylineseparator";
34      }
35  
36      @Test
37      public void testExample1() throws Exception {
38          final String[] expected = {
39              "14:1: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "package"),
40              "15:1: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "import"),
41              "22:3: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "VARIABLE_DEF"),
42              "29:3: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "METHOD_DEF"),
43          };
44  
45          verifyWithInlineConfigParser(getPath("Example1.java"), expected);
46      }
47  
48      @Test
49      public void testExample2() throws Exception {
50          final String[] expected = {
51              "22:3: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "VARIABLE_DEF"),
52              "29:3: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "METHOD_DEF"),
53          };
54  
55          verifyWithInlineConfigParser(getPath("Example2.java"), expected);
56      }
57  
58      @Test
59      public void testExample3() throws Exception {
60          final String[] expected = {
61              "16:1: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "package"),
62              "17:1: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "import"),
63              "31:3: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "METHOD_DEF"),
64          };
65  
66          verifyWithInlineConfigParser(getPath("Example3.java"), expected);
67      }
68  
69      @Test
70      public void testExample4() throws Exception {
71          final String[] expected = {
72              "16:1: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "package"),
73              "17:1: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "import"),
74              "24:3: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "VARIABLE_DEF"),
75              "27:3: " + getCheckMessage(MSG_MULTIPLE_LINES, "VARIABLE_DEF"),
76              "30:3: " + getCheckMessage(MSG_MULTIPLE_LINES, "METHOD_DEF"),
77              "31:3: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "METHOD_DEF"),
78          };
79  
80          verifyWithInlineConfigParser(getPath("Example4.java"), expected);
81      }
82  
83      @Test
84      public void testExample5() throws Exception {
85          final String[] expected = {
86              "17:1: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "package"),
87              "18:1: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "import"),
88              "25:3: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "VARIABLE_DEF"),
89              "32:3: " + getCheckMessage(MSG_SHOULD_BE_SEPARATED, "METHOD_DEF"),
90              "33:17: " + getCheckMessage(MSG_MULTIPLE_LINES_INSIDE),
91          };
92  
93          verifyWithInlineConfigParser(getPath("Example5.java"), expected);
94      }
95  }