From 8f12d2b92568c8fca42dfbd26f3d1f0b17100a7b Mon Sep 17 00:00:00 2001 From: Aleksandr Ivanov Date: Sat, 25 Jul 2015 18:45:22 +0300 Subject: [PATCH] 100% coverage for CustomImportOrder. #1128 --- pom.xml | 2 -- .../checks/imports/CustomImportOrderCheck.java | 2 +- .../imports/CustomImportOrderCheckTest.java | 16 ++++++++++++++++ .../InputCustomImportOrder_NoSeparator.java | 12 ++++++++++++ 4 files changed, 29 insertions(+), 3 deletions(-) create mode 100644 src/test/resources/com/puppycrawl/tools/checkstyle/imports/InputCustomImportOrder_NoSeparator.java diff --git a/pom.xml b/pom.xml index cb610c1f1..caa89d237 100644 --- a/pom.xml +++ b/pom.xml @@ -1135,8 +1135,6 @@ .*.checks.header.RegexpHeaderCheck8894 - .*.checks.imports.CustomImportOrderCheck98100 - .*.checks.javadoc.AbstractJavadocCheck9093 .*.checks.javadoc.AbstractJavadocCheck\$.*5068 .*.checks.javadoc.AtclauseOrderCheck8888 diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheck.java index 0b64ab9ae..5e1c60a90 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheck.java @@ -370,7 +370,7 @@ public class CustomImportOrderCheck extends Check { if (customImportOrderRules.size() > groupNumber + 1) { final String nextGroup = getNextImportGroup(groupNumber + 1); if (importGroup.equals(nextGroup)) { - if (separateLineBetweenGroups && previousImport != null + if (separateLineBetweenGroups && !hasEmptyLineBefore(importObject.getLineNumber())) { log(importObject.getLineNumber(), MSG_LINE_SEPARATOR, fullImportIdent); diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheckTest.java index 7eb052ff1..d49712891 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheckTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheckTest.java @@ -207,6 +207,22 @@ public class CustomImportOrderCheckTest extends BaseCheckTestSupport { + "InputCustomImportOrderSamePackage.java").getCanonicalPath(), expected); } + @Test + public void testWithoutLineSeparator2() throws Exception { + final DefaultConfiguration checkConfig = + createCheckConfig(CustomImportOrderCheck.class); + checkConfig.addAttribute("separateLineBetweenGroups", "false"); + checkConfig.addAttribute("customImportOrderRules", + "STATIC###STANDARD_JAVA_PACKAGE"); + checkConfig.addAttribute("sortImportsInGroupAlphabetically", "true"); + final String[] expected = { + "4: " + getCheckMessage(MSG_LEX, "java.io.File.createTempFile"), + }; + + verify(checkConfig, getPath("imports" + File.separator + + "InputCustomImportOrder_NoSeparator.java"), expected); + } + @Test public void testNoValid() throws Exception { final DefaultConfiguration checkConfig = diff --git a/src/test/resources/com/puppycrawl/tools/checkstyle/imports/InputCustomImportOrder_NoSeparator.java b/src/test/resources/com/puppycrawl/tools/checkstyle/imports/InputCustomImportOrder_NoSeparator.java new file mode 100644 index 000000000..4b528bc03 --- /dev/null +++ b/src/test/resources/com/puppycrawl/tools/checkstyle/imports/InputCustomImportOrder_NoSeparator.java @@ -0,0 +1,12 @@ +package java.util.concurrent; +import static java.awt.Button.ABORT; +import static javax.swing.WindowConstants.*; +import static java.io.File.createTempFile; +import java.util.*; +import java.util.StringTokenizer; +import com.puppycrawl.tools.*; +import com.*; +import org.apache.*; + +public class InputCustomImportOrder_NoSeparator { +}