diff --git a/.ci/pitest.sh b/.ci/pitest.sh
index b11dfb5f2590..6024d33a2804 100755
--- a/.ci/pitest.sh
+++ b/.ci/pitest.sh
@@ -73,11 +73,9 @@ pitest-imports)
declare -a ignoredItems=(
"AvoidStarImportCheck.java.html:
&& ast.getType() == TokenTypes.STATIC_IMPORT) { | "
"AvoidStarImportCheck.java.html: if (exclude.endsWith(STAR_IMPORT_SUFFIX)) { | "
- "CustomImportOrderCheck.java.html: && matcher.start() < betterMatchCandidate.matchPosition) { | "
"CustomImportOrderCheck.java.html: else if (customImportOrderRules.contains(SAME_PACKAGE_RULE_GROUP)) { | "
"CustomImportOrderCheck.java.html: if (bestMatch.group.equals(NON_GROUP_RULE_GROUP)) { | "
"CustomImportOrderCheck.java.html: if (customImportOrderRules.contains(SAME_PACKAGE_RULE_GROUP)) { | "
- "CustomImportOrderCheck.java.html: || length == betterMatchCandidate.matchLength | "
"IllegalImportCheck.java.html: if (regexp) { | "
"IllegalImportCheck.java.html: if (!result && illegalClasses != null) { | "
"IllegalImportCheck.java.html: if (!result) { | "
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 74666453a135..720fa6fea0ec 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
@@ -721,6 +721,24 @@ public void testMultiplePatternMatchesFirstPatternHasEarlierPosition() throws Ex
expected);
}
+ @Test
+ public void testMultiplePatternMultipleImportFirstPatternHasLaterPosition() throws Exception {
+ final DefaultConfiguration checkConfig =
+ createModuleConfig(CustomImportOrderCheck.class);
+ checkConfig.addAttribute("customImportOrderRules",
+ "SPECIAL_IMPORTS###STANDARD_JAVA_PACKAGE");
+ checkConfig.addAttribute("specialImportsRegExp", "Test");
+ checkConfig.addAttribute("standardPackageRegExp", "unit");
+
+ createChecker(checkConfig);
+ final String[] expected = {
+ "4: " + getCheckMessage(MSG_NONGROUP_EXPECTED, STD, "org.junit.Test"),
+ };
+ verify(checkConfig,
+ getPath("InputCustomImportOrder_MultiplePatternMultipleImport.java"),
+ expected);
+ }
+
@Test
public void testNoPackage() throws Exception {
final DefaultConfiguration checkConfig =
diff --git a/src/test/resources/com/puppycrawl/tools/checkstyle/checks/imports/customimportorder/InputCustomImportOrder_MultiplePatternMultipleImport.java b/src/test/resources/com/puppycrawl/tools/checkstyle/checks/imports/customimportorder/InputCustomImportOrder_MultiplePatternMultipleImport.java
new file mode 100644
index 000000000000..f32cb5942df7
--- /dev/null
+++ b/src/test/resources/com/puppycrawl/tools/checkstyle/checks/imports/customimportorder/InputCustomImportOrder_MultiplePatternMultipleImport.java
@@ -0,0 +1,7 @@
+package com.puppycrawl.tools.checkstyle.checks.imports.customimportorder;
+
+import java.util.Scanner;
+import org.junit.Test;
+
+public class InputCustomImportOrder_MultiplePatternMultipleImport {
+}