This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-text.git


The following commit(s) were added to refs/heads/master by this push:
     new 306c368  Add isMatch(CharSequence, int)
306c368 is described below

commit 306c368ce1cce49c386462065ad09c12c61a144c
Author: Gary Gregory <garydgreg...@gmail.com>
AuthorDate: Fri Jun 26 16:02:41 2020 -0400

    Add isMatch(CharSequence, int)
    
    Add isMatch(CharSequence, int, int, int)
---
 .../text/matcher/StringMatcherOnCharArrayTest.java | 146 +++++++++++++++++----
 .../StringMatcherOnCharSequenceStringTest.java     | 146 +++++++++++++++++----
 2 files changed, 242 insertions(+), 50 deletions(-)

diff --git 
a/src/test/java/org/apache/commons/text/matcher/StringMatcherOnCharArrayTest.java
 
b/src/test/java/org/apache/commons/text/matcher/StringMatcherOnCharArrayTest.java
index 0a441cb..a4c4e77 100644
--- 
a/src/test/java/org/apache/commons/text/matcher/StringMatcherOnCharArrayTest.java
+++ 
b/src/test/java/org/apache/commons/text/matcher/StringMatcherOnCharArrayTest.java
@@ -30,16 +30,19 @@ public class StringMatcherOnCharArrayTest {
 
     private static final char[] BUFFER2 = "abcdef".toCharArray();
 
+    private static final int BUFFER2_LENGTH = BUFFER2.length;
+
     @Test
     public void testCharMatcher_char() {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.charMatcher('c');
         assertEquals(1, matcher.size());
-        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2.length)).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2.length)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
         //
         assertThat(matcher.isMatch(BUFFER2, 0)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER2, 1)).isEqualTo(0);
@@ -53,12 +56,21 @@ public class StringMatcherOnCharArrayTest {
     public void testCharSetMatcher_charArray() {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.charSetMatcher("ace".toCharArray());
         assertEquals(1, matcher.size());
-        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2.length)).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2.length)).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2.length)).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2.length)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 1)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 2)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 3)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 5)).isEqualTo(0);
+        //
         assertThat(StringMatcherFactory.INSTANCE.charSetMatcher())
                 .isSameAs(StringMatcherFactory.INSTANCE.noneMatcher());
         assertThat(StringMatcherFactory.INSTANCE.charSetMatcher((char[]) null))
@@ -71,12 +83,21 @@ public class StringMatcherOnCharArrayTest {
     public void testCharSetMatcher_String() {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.charSetMatcher("ace");
         assertEquals(1, matcher.size());
-        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2.length)).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2.length)).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2.length)).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2.length)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 1)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 2)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 3)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 5)).isEqualTo(0);
+        //
         assertThat(StringMatcherFactory.INSTANCE.charSetMatcher(""))
                 .isSameAs(StringMatcherFactory.INSTANCE.noneMatcher());
         assertThat(StringMatcherFactory.INSTANCE.charSetMatcher((String) null))
@@ -90,9 +111,14 @@ public class StringMatcherOnCharArrayTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.commaMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.commaMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 0, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 1, 0, 
BUFFER1.length)).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 2, 0, 
BUFFER1.length)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 0)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 1)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 2)).isEqualTo(0);
     }
 
     @Test
@@ -100,8 +126,12 @@ public class StringMatcherOnCharArrayTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.doubleQuoteMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.doubleQuoteMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 11, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 12, 0, 
BUFFER1.length)).isEqualTo(1);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 11)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 12)).isEqualTo(1);
     }
 
     @Test
@@ -111,7 +141,7 @@ public class StringMatcherOnCharArrayTest {
         // the concern of StringMatcher, and are not bugs
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.stringMatcher("bc");
         assertEquals(2, matcher.size());
-        assertThat(matcher.isMatch(BUFFER2, 1, 1, 
BUFFER2.length)).isEqualTo(2);
+        assertThat(matcher.isMatch(BUFFER2, 1, 1, 
BUFFER2_LENGTH)).isEqualTo(2);
         assertThat(matcher.isMatch(BUFFER2, 1, 0, 3)).isEqualTo(2);
         assertThat(matcher.isMatch(BUFFER2, 1, 0, 2)).isEqualTo(0);
     }
@@ -121,6 +151,7 @@ public class StringMatcherOnCharArrayTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.noneMatcher();
         assertEquals(0, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.noneMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 0, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 1, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 2, 0, 
BUFFER1.length)).isEqualTo(0);
@@ -134,6 +165,20 @@ public class StringMatcherOnCharArrayTest {
         assertThat(matcher.isMatch(BUFFER1, 10, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 11, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 12, 0, 
BUFFER1.length)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 0)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 1)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 2)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 3)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 4)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 5)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 6)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 7)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 8)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 9)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 10)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 11)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 12)).isEqualTo(0);
     }
 
     @Test
@@ -141,9 +186,14 @@ public class StringMatcherOnCharArrayTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.quoteMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.quoteMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 10, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 11, 0, 
BUFFER1.length)).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 12, 0, 
BUFFER1.length)).isEqualTo(1);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 10)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 11)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 12)).isEqualTo(1);
     }
 
     @Test
@@ -151,9 +201,14 @@ public class StringMatcherOnCharArrayTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.singleQuoteMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.singleQuoteMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 10, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 11, 0, 
BUFFER1.length)).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 12, 0, 
BUFFER1.length)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 10)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 11)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 12)).isEqualTo(0);
     }
 
     @Test
@@ -161,9 +216,14 @@ public class StringMatcherOnCharArrayTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.spaceMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.spaceMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 4, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 5, 0, 
BUFFER1.length)).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 6, 0, 
BUFFER1.length)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 4)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 5)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 6)).isEqualTo(0);
     }
 
     @Test
@@ -171,6 +231,7 @@ public class StringMatcherOnCharArrayTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.splitMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.splitMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 2, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 3, 0, 
BUFFER1.length)).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 4, 0, 
BUFFER1.length)).isEqualTo(0);
@@ -180,18 +241,37 @@ public class StringMatcherOnCharArrayTest {
         assertThat(matcher.isMatch(BUFFER1, 8, 0, 
BUFFER1.length)).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 9, 0, 
BUFFER1.length)).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 10, 0, 
BUFFER1.length)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 2)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 3)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 4)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 5)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 6)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 7)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 8)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 9)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 10)).isEqualTo(0);
     }
 
     @Test
     public void testStringMatcher_String() {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.stringMatcher("bc");
         assertEquals(2, matcher.size());
-        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2.length)).isEqualTo(2);
-        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2.length)).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2.length)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2_LENGTH)).isEqualTo(2);
+        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 1)).isEqualTo(2);
+        assertThat(matcher.isMatch(BUFFER2, 2)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 3)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 5)).isEqualTo(0);
+        //
         assertThat(StringMatcherFactory.INSTANCE.stringMatcher(""))
                 .isSameAs(StringMatcherFactory.INSTANCE.noneMatcher());
         assertThat(StringMatcherFactory.INSTANCE.stringMatcher((String) null))
@@ -204,9 +284,14 @@ public class StringMatcherOnCharArrayTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.tabMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.tabMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 2, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 3, 0, 
BUFFER1.length)).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 4, 0, 
BUFFER1.length)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 2)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 3)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 4)).isEqualTo(0);
     }
 
     @Test
@@ -214,6 +299,7 @@ public class StringMatcherOnCharArrayTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.trimMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.trimMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 2, 0, 
BUFFER1.length)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 3, 0, 
BUFFER1.length)).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 4, 0, 
BUFFER1.length)).isEqualTo(0);
@@ -223,6 +309,16 @@ public class StringMatcherOnCharArrayTest {
         assertThat(matcher.isMatch(BUFFER1, 8, 0, 
BUFFER1.length)).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 9, 0, 
BUFFER1.length)).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 10, 0, 
BUFFER1.length)).isEqualTo(1);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 2)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 3)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 4)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 5)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 6)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 7)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 8)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 9)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 10)).isEqualTo(1);
     }
 
 }
diff --git 
a/src/test/java/org/apache/commons/text/matcher/StringMatcherOnCharSequenceStringTest.java
 
b/src/test/java/org/apache/commons/text/matcher/StringMatcherOnCharSequenceStringTest.java
index af1f995..31b350f 100644
--- 
a/src/test/java/org/apache/commons/text/matcher/StringMatcherOnCharSequenceStringTest.java
+++ 
b/src/test/java/org/apache/commons/text/matcher/StringMatcherOnCharSequenceStringTest.java
@@ -30,16 +30,19 @@ public class StringMatcherOnCharSequenceStringTest {
 
     private static final String BUFFER2 = "abcdef";
 
+    private static final int BUFFER2_LENGTH = BUFFER2.length();
+
     @Test
     public void testCharMatcher_char() {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.charMatcher('c');
         assertEquals(1, matcher.size());
-        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2.length())).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2.length())).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
         //
         assertThat(matcher.isMatch(BUFFER2, 0)).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER2, 1)).isEqualTo(0);
@@ -53,12 +56,21 @@ public class StringMatcherOnCharSequenceStringTest {
     public void testCharSetMatcher_charArray() {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.charSetMatcher("ace".toCharArray());
         assertEquals(1, matcher.size());
-        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2.length())).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2.length())).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2.length())).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2.length())).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 1)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 2)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 3)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 5)).isEqualTo(0);
+        //
         assertThat(StringMatcherFactory.INSTANCE.charSetMatcher())
                 .isSameAs(StringMatcherFactory.INSTANCE.noneMatcher());
         assertThat(StringMatcherFactory.INSTANCE.charSetMatcher((char[]) null))
@@ -71,12 +83,21 @@ public class StringMatcherOnCharSequenceStringTest {
     public void testCharSetMatcher_String() {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.charSetMatcher("ace");
         assertEquals(1, matcher.size());
-        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2.length())).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2.length())).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2.length())).isEqualTo(1);
-        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2.length())).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2_LENGTH)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 1)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 2)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 3)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER2, 5)).isEqualTo(0);
+        //
         assertThat(StringMatcherFactory.INSTANCE.charSetMatcher(""))
                 .isSameAs(StringMatcherFactory.INSTANCE.noneMatcher());
         assertThat(StringMatcherFactory.INSTANCE.charSetMatcher((String) null))
@@ -90,9 +111,14 @@ public class StringMatcherOnCharSequenceStringTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.commaMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.commaMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 0, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 1, 0, 
BUFFER1.length())).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 2, 0, 
BUFFER1.length())).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 0)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 1)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 2)).isEqualTo(0);
     }
 
     @Test
@@ -100,8 +126,12 @@ public class StringMatcherOnCharSequenceStringTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.doubleQuoteMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.doubleQuoteMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 11, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 12, 0, 
BUFFER1.length())).isEqualTo(1);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 11)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 12)).isEqualTo(1);
     }
 
     @Test
@@ -111,7 +141,7 @@ public class StringMatcherOnCharSequenceStringTest {
         // the concern of StringMatcher, and are not bugs
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.stringMatcher("bc");
         assertEquals(2, matcher.size());
-        assertThat(matcher.isMatch(BUFFER2, 1, 1, 
BUFFER2.length())).isEqualTo(2);
+        assertThat(matcher.isMatch(BUFFER2, 1, 1, 
BUFFER2_LENGTH)).isEqualTo(2);
         assertThat(matcher.isMatch(BUFFER2, 1, 0, 3)).isEqualTo(2);
         assertThat(matcher.isMatch(BUFFER2, 1, 0, 2)).isEqualTo(0);
     }
@@ -121,6 +151,7 @@ public class StringMatcherOnCharSequenceStringTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.noneMatcher();
         assertEquals(0, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.noneMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 0, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 1, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 2, 0, 
BUFFER1.length())).isEqualTo(0);
@@ -134,6 +165,20 @@ public class StringMatcherOnCharSequenceStringTest {
         assertThat(matcher.isMatch(BUFFER1, 10, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 11, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 12, 0, 
BUFFER1.length())).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 0)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 1)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 2)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 3)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 4)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 5)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 6)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 7)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 8)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 9)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 10)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 11)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 12)).isEqualTo(0);
     }
 
     @Test
@@ -141,9 +186,14 @@ public class StringMatcherOnCharSequenceStringTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.quoteMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.quoteMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 10, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 11, 0, 
BUFFER1.length())).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 12, 0, 
BUFFER1.length())).isEqualTo(1);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 10)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 11)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 12)).isEqualTo(1);
     }
 
     @Test
@@ -151,9 +201,14 @@ public class StringMatcherOnCharSequenceStringTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.singleQuoteMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.singleQuoteMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 10, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 11, 0, 
BUFFER1.length())).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 12, 0, 
BUFFER1.length())).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 10)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 11)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 12)).isEqualTo(0);
     }
 
     @Test
@@ -161,9 +216,14 @@ public class StringMatcherOnCharSequenceStringTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.spaceMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.spaceMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 4, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 5, 0, 
BUFFER1.length())).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 6, 0, 
BUFFER1.length())).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 4)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 5)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 6)).isEqualTo(0);
     }
 
     @Test
@@ -171,6 +231,7 @@ public class StringMatcherOnCharSequenceStringTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.splitMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.splitMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 2, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 3, 0, 
BUFFER1.length())).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 4, 0, 
BUFFER1.length())).isEqualTo(0);
@@ -180,18 +241,37 @@ public class StringMatcherOnCharSequenceStringTest {
         assertThat(matcher.isMatch(BUFFER1, 8, 0, 
BUFFER1.length())).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 9, 0, 
BUFFER1.length())).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 10, 0, 
BUFFER1.length())).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 2)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 3)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 4)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 5)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 6)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 7)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 8)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 9)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 10)).isEqualTo(0);
     }
 
     @Test
     public void testStringMatcher_String() {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.stringMatcher("bc");
         assertEquals(2, matcher.size());
-        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2.length())).isEqualTo(2);
-        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2.length())).isEqualTo(0);
-        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2.length())).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 1, 0, 
BUFFER2_LENGTH)).isEqualTo(2);
+        assertThat(matcher.isMatch(BUFFER2, 2, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 3, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 5, 0, 
BUFFER2_LENGTH)).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER2, 0)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 1)).isEqualTo(2);
+        assertThat(matcher.isMatch(BUFFER2, 2)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 3)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 4)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER2, 5)).isEqualTo(0);
+        //
         assertThat(StringMatcherFactory.INSTANCE.stringMatcher(""))
                 .isSameAs(StringMatcherFactory.INSTANCE.noneMatcher());
         assertThat(StringMatcherFactory.INSTANCE.stringMatcher((String) null))
@@ -204,9 +284,14 @@ public class StringMatcherOnCharSequenceStringTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.tabMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.tabMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 2, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 3, 0, 
BUFFER1.length())).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 4, 0, 
BUFFER1.length())).isEqualTo(0);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 2)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 3)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 4)).isEqualTo(0);
     }
 
     @Test
@@ -214,6 +299,7 @@ public class StringMatcherOnCharSequenceStringTest {
         final StringMatcher matcher = 
StringMatcherFactory.INSTANCE.trimMatcher();
         assertEquals(1, matcher.size());
         
assertThat(StringMatcherFactory.INSTANCE.trimMatcher()).isSameAs(matcher);
+        //
         assertThat(matcher.isMatch(BUFFER1, 2, 0, 
BUFFER1.length())).isEqualTo(0);
         assertThat(matcher.isMatch(BUFFER1, 3, 0, 
BUFFER1.length())).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 4, 0, 
BUFFER1.length())).isEqualTo(0);
@@ -223,6 +309,16 @@ public class StringMatcherOnCharSequenceStringTest {
         assertThat(matcher.isMatch(BUFFER1, 8, 0, 
BUFFER1.length())).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 9, 0, 
BUFFER1.length())).isEqualTo(1);
         assertThat(matcher.isMatch(BUFFER1, 10, 0, 
BUFFER1.length())).isEqualTo(1);
+        //
+        assertThat(matcher.isMatch(BUFFER1, 2)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 3)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 4)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 5)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 6)).isEqualTo(0);
+        assertThat(matcher.isMatch(BUFFER1, 7)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 8)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 9)).isEqualTo(1);
+        assertThat(matcher.isMatch(BUFFER1, 10)).isEqualTo(1);
     }
 
 }

Reply via email to