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-codec.git


The following commit(s) were added to refs/heads/master by this push:
     new 288f950c Precompile patterns.
288f950c is described below

commit 288f950cb2724455eea87d694e28c480789477ae
Author: Gary D. Gregory <[email protected]>
AuthorDate: Mon Aug 25 16:07:57 2025 -0400

    Precompile patterns.
---
 .../commons/codec/language/bm/BeiderMorseEncoderTest.java      |  6 +++++-
 .../codec/language/bm/PhoneticEngineRegressionTest.java        |  5 ++++-
 .../apache/commons/codec/language/bm/PhoneticEngineTest.java   | 10 +++++++---
 3 files changed, 16 insertions(+), 5 deletions(-)

diff --git 
a/src/test/java/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java
 
b/src/test/java/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java
index a65d236c..0dd274b4 100644
--- 
a/src/test/java/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java
+++ 
b/src/test/java/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java
@@ -25,6 +25,7 @@ import static org.junit.jupiter.api.Assertions.assertTimeout;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.time.Duration;
+import java.util.regex.Pattern;
 
 import org.apache.commons.codec.AbstractStringEncoderTest;
 import org.apache.commons.codec.EncoderException;
@@ -35,6 +36,9 @@ import org.junit.jupiter.api.Test;
  * Tests BeiderMorseEncoder.
  */
 class BeiderMorseEncoderTest extends AbstractStringEncoderTest<StringEncoder> {
+
+    private static final Pattern PIPE_PATTERN = Pattern.compile("\\|");
+
     private static final char[] TEST_CHARS = { 'a', 'b', 'c', 'd', 'e', 'f', 
'g', 'h', 'o', 'u' };
 
     private void assertNotEmpty(final BeiderMorseEncoder bmpm, final String 
value) throws EncoderException {
@@ -151,7 +155,7 @@ class BeiderMorseEncoderTest extends 
AbstractStringEncoderTest<StringEncoder> {
         final String phonemes = encoder.encode(phrase);
         assertFalse(phonemes.isEmpty());
 
-        final String[] phonemeArr = phonemes.split("\\|");
+        final String[] phonemeArr = PIPE_PATTERN.split(phonemes);
         assertTrue(phonemeArr.length <= 10);
     }
 
diff --git 
a/src/test/java/org/apache/commons/codec/language/bm/PhoneticEngineRegressionTest.java
 
b/src/test/java/org/apache/commons/codec/language/bm/PhoneticEngineRegressionTest.java
index e70e9f67..488ab3d0 100644
--- 
a/src/test/java/org/apache/commons/codec/language/bm/PhoneticEngineRegressionTest.java
+++ 
b/src/test/java/org/apache/commons/codec/language/bm/PhoneticEngineRegressionTest.java
@@ -23,6 +23,7 @@ import java.util.Arrays;
 import java.util.HashSet;
 import java.util.Map;
 import java.util.TreeMap;
+import java.util.regex.Pattern;
 
 import org.junit.jupiter.api.Test;
 
@@ -31,6 +32,8 @@ import org.junit.jupiter.api.Test;
  */
 class PhoneticEngineRegressionTest {
 
+    private static final Pattern COMMA_PATTERN = Pattern.compile(",");
+
     /**
      * This code is similar in style to code found in Solr:
      * 
solr/core/src/java/org/apache/solr/analysis/BeiderMorseFilterFactory.java
@@ -57,7 +60,7 @@ class PhoneticEngineRegressionTest {
         if (languageSetArg == null || languageSetArg.equals("auto")) {
             languageSet = null;
         } else {
-            languageSet = Languages.LanguageSet.from(new 
HashSet<>(Arrays.asList(languageSetArg.split(","))));
+            languageSet = Languages.LanguageSet.from(new 
HashSet<>(Arrays.asList(COMMA_PATTERN.split(languageSetArg))));
         }
 
         /*
diff --git 
a/src/test/java/org/apache/commons/codec/language/bm/PhoneticEngineTest.java 
b/src/test/java/org/apache/commons/codec/language/bm/PhoneticEngineTest.java
index 76fc9ba2..e77abefc 100644
--- a/src/test/java/org/apache/commons/codec/language/bm/PhoneticEngineTest.java
+++ b/src/test/java/org/apache/commons/codec/language/bm/PhoneticEngineTest.java
@@ -20,6 +20,7 @@ package org.apache.commons.codec.language.bm;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
+import java.util.regex.Pattern;
 import java.util.stream.Stream;
 
 import org.junit.jupiter.params.ParameterizedTest;
@@ -33,6 +34,9 @@ class PhoneticEngineTest {
 
     private static final Integer TEN = Integer.valueOf(10);
 
+    private static final Pattern PIPE_PATTERN = Pattern.compile("\\|");
+    private static final Pattern MINUS_PATTERN = Pattern.compile("-");
+
     public static Stream<Arguments> data() {
         // @formatter:off
         return Stream.of(
@@ -73,12 +77,12 @@ class PhoneticEngineTest {
         assertEquals(phoneticExpected, phoneticActual, "phoneme incorrect");
 
         if (concat) {
-            final String[] split = phoneticActual.split("\\|");
+            final String[] split = PIPE_PATTERN.split(phoneticActual);
             assertTrue(split.length <= maxPhonemes);
         } else {
-            final String[] words = phoneticActual.split("-");
+            final String[] words = MINUS_PATTERN.split(phoneticActual);
             for (final String word : words) {
-                final String[] split = word.split("\\|");
+                final String[] split = PIPE_PATTERN.split(word);
                 assertTrue(split.length <= maxPhonemes);
             }
         }

Reply via email to