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));
+ }
+
}