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


The following commit(s) were added to refs/heads/master by this push:
     new 1da75703 Check setDelimiter() for empty string
     new 23c39b15 Merge pull request #266 from mykolaf/delimcheck
1da75703 is described below

commit 1da75703a46305dbdf45b29e6d886533769c2a3c
Author: Mykola Faryma <m.far...@partner.samsung.com>
AuthorDate: Tue Sep 27 13:10:43 2022 +0300

    Check setDelimiter() for empty string
    
    Signed-off-by: Mykola Faryma <m.far...@partner.samsung.com>
---
 src/main/java/org/apache/commons/csv/CSVFormat.java     | 3 +++
 src/test/java/org/apache/commons/csv/CSVFormatTest.java | 5 +++++
 2 files changed, 8 insertions(+)

diff --git a/src/main/java/org/apache/commons/csv/CSVFormat.java 
b/src/main/java/org/apache/commons/csv/CSVFormat.java
index ba39b742..5a47cb8e 100644
--- a/src/main/java/org/apache/commons/csv/CSVFormat.java
+++ b/src/main/java/org/apache/commons/csv/CSVFormat.java
@@ -346,6 +346,9 @@ public final class CSVFormat implements Serializable {
             if (containsLineBreak(delimiter)) {
                 throw new IllegalArgumentException("The delimiter cannot be a 
line break");
             }
+            if (delimiter.isEmpty()) {
+                throw new IllegalArgumentException("The delimiter cannot be 
empty");
+            }
             this.delimiter = delimiter;
             return this;
         }
diff --git a/src/test/java/org/apache/commons/csv/CSVFormatTest.java 
b/src/test/java/org/apache/commons/csv/CSVFormatTest.java
index 0be97745..d25de480 100644
--- a/src/test/java/org/apache/commons/csv/CSVFormatTest.java
+++ b/src/test/java/org/apache/commons/csv/CSVFormatTest.java
@@ -1569,4 +1569,9 @@ public class CSVFormatTest {
         final CSVFormat formatWithRecordSeparator = 
CSVFormat.DEFAULT.withSystemRecordSeparator();
         assertEquals(System.lineSeparator(), 
formatWithRecordSeparator.getRecordSeparator());
     }
+
+    @Test
+    public void testDelimiterEmptyStringThrowsException1() {
+        assertThrows(IllegalArgumentException.class, () -> 
CSVFormat.DEFAULT.builder().setDelimiter("").build());
+    }
 }

Reply via email to