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 aab6439e Add unit tests to increase coverage (#719)
aab6439e is described below

commit aab6439edd5c25d399d3435d8f79be20994270f9
Author: Michael Hausegger <[email protected]>
AuthorDate: Fri Nov 14 19:47:03 2025 +0100

    Add unit tests to increase coverage (#719)
    
    * Added new Unit Tests to increase coverage
    
    * Remove trailing whitespace
    
    * I verified a before-and-after JaCoCo report that each change improved 
coverage.
    ---------
    
    Co-authored-by: TheRealHaui <[email protected]>
    Co-authored-by: Gary Gregory <[email protected]>
---
 .../org/apache/commons/text/StringSubstitutorTest.java    |  7 +++++++
 .../commons/text/similarity/HammingDistanceTest.java      | 15 +++++++++++++++
 .../commons/text/similarity/JaroWinklerDistanceTest.java  | 10 ++++++++++
 .../text/similarity/JaroWinklerSimilarityTest.java        | 10 ++++++++++
 4 files changed, 42 insertions(+)

diff --git a/src/test/java/org/apache/commons/text/StringSubstitutorTest.java 
b/src/test/java/org/apache/commons/text/StringSubstitutorTest.java
index 0f1fbf43..3692653f 100644
--- a/src/test/java/org/apache/commons/text/StringSubstitutorTest.java
+++ b/src/test/java/org/apache/commons/text/StringSubstitutorTest.java
@@ -1078,4 +1078,11 @@ public class StringSubstitutorTest {
         assertEqualsCharSeq("value $${escaped}", replace(sub, org));
     }
 
+    @Test
+    void testDetectsCyclicSubstitution() {
+        final Map<String, String> map = new HashMap<>();
+        map.put("name", "<name>");
+        assertThrows(IllegalStateException.class, () -> 
StringSubstitutor.replace("Hi <name>!", map, "<", ">"));
+    }
+
 }
diff --git 
a/src/test/java/org/apache/commons/text/similarity/HammingDistanceTest.java 
b/src/test/java/org/apache/commons/text/similarity/HammingDistanceTest.java
index 181d2fe2..918a7bed 100644
--- a/src/test/java/org/apache/commons/text/similarity/HammingDistanceTest.java
+++ b/src/test/java/org/apache/commons/text/similarity/HammingDistanceTest.java
@@ -59,6 +59,21 @@ class HammingDistanceTest {
         assertThrows(IllegalArgumentException.class, () -> distance.apply("", 
null));
     }
 
+        @Test
+    void testApply_NullSimilarityInput() {
+        assertThrows(IllegalArgumentException.class, () -> 
distance.apply(null, new SimilarityCharacterInput("a")));
+    }
+
+    @Test
+    void testApply_SimilarityInputNull() {
+        assertThrows(IllegalArgumentException.class, () -> distance.apply(new 
SimilarityCharacterInput("a"), null));
+    }
+
+    @Test
+    void testApply_DifferentSimilarityInputLength() {
+        assertThrows(IllegalArgumentException.class, () -> distance.apply(new 
SimilarityCharacterInput("a"), new SimilarityCharacterInput("ab")));
+    }
+
     @Test
     void testHammingDistanceCharSequence() {
         assertEquals(0, distance.apply("", ""));
diff --git 
a/src/test/java/org/apache/commons/text/similarity/JaroWinklerDistanceTest.java 
b/src/test/java/org/apache/commons/text/similarity/JaroWinklerDistanceTest.java
index f1242fb3..412f1e72 100644
--- 
a/src/test/java/org/apache/commons/text/similarity/JaroWinklerDistanceTest.java
+++ 
b/src/test/java/org/apache/commons/text/similarity/JaroWinklerDistanceTest.java
@@ -95,4 +95,14 @@ class JaroWinklerDistanceTest {
         assertEquals(1 - 0.51111d, distance.apply("foo", "  foo"), 0.00001d);
     }
 
+    @Test
+    void testApply_NullSimilarityInput() {
+        assertThrows(IllegalArgumentException.class, () -> 
distance.apply(null, new SimilarityCharacterInput("a")));
+    }
+
+    @Test
+    void testApply_SimilarityInputNull() {
+        assertThrows(IllegalArgumentException.class, () -> distance.apply(new 
SimilarityCharacterInput("a"), null));
+    }
+
 }
diff --git 
a/src/test/java/org/apache/commons/text/similarity/JaroWinklerSimilarityTest.java
 
b/src/test/java/org/apache/commons/text/similarity/JaroWinklerSimilarityTest.java
index a5acfb23..0b1f9705 100644
--- 
a/src/test/java/org/apache/commons/text/similarity/JaroWinklerSimilarityTest.java
+++ 
b/src/test/java/org/apache/commons/text/similarity/JaroWinklerSimilarityTest.java
@@ -136,4 +136,14 @@ class JaroWinklerSimilarityTest {
         assertEquals(0.911111d, similarity.apply(wrap("John Horn"), "John 
Hopkins"), 0.00001d);
     }
 
+        @Test
+    void testApply_NullSimilarityInput() {
+        assertThrows(IllegalArgumentException.class, () -> 
similarity.apply(null, new SimilarityCharacterInput("a")));
+    }
+
+    @Test
+    void testApply_SimilarityInputNull() {
+        assertThrows(IllegalArgumentException.class, () -> 
similarity.apply(new SimilarityCharacterInput("a"), null));
+    }
+
 }

Reply via email to