You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2021/07/04 21:35:10 UTC
[commons-csv] branch master updated: Fixed CSV-271 & Add testcase
for new change (#157)
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 2c83a30 Fixed CSV-271 & Add testcase for new change (#157)
2c83a30 is described below
commit 2c83a308255d07295c761d7e61f10359b0687b01
Author: Amar Prakash Pandey <am...@gmail.com>
AuthorDate: Mon Jul 5 03:05:02 2021 +0530
Fixed CSV-271 & Add testcase for new change (#157)
---
.../java/org/apache/commons/csv/CSVPrinter.java | 3 +-
.../java/org/apache/commons/csv/CSVFormatTest.java | 3 +-
.../apache/commons/csv/issues/JiraCsv271Test.java | 54 ++++++++++++++++++++++
3 files changed, 57 insertions(+), 3 deletions(-)
diff --git a/src/main/java/org/apache/commons/csv/CSVPrinter.java b/src/main/java/org/apache/commons/csv/CSVPrinter.java
index b953582..161f452 100644
--- a/src/main/java/org/apache/commons/csv/CSVPrinter.java
+++ b/src/main/java/org/apache/commons/csv/CSVPrinter.java
@@ -281,8 +281,7 @@ public final class CSVPrinter implements Flushable, Closeable {
* If an I/O error occurs
*/
public void printRecord(final Object... values) throws IOException {
- format.printRecord(out, values);
- newRecord = true;
+ printRecord(Arrays.asList(values));
}
/**
diff --git a/src/test/java/org/apache/commons/csv/CSVFormatTest.java b/src/test/java/org/apache/commons/csv/CSVFormatTest.java
index 2c29463..3e5d734 100644
--- a/src/test/java/org/apache/commons/csv/CSVFormatTest.java
+++ b/src/test/java/org/apache/commons/csv/CSVFormatTest.java
@@ -43,6 +43,7 @@ import java.lang.reflect.Modifier;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Arrays;
+import java.util.Objects;
import org.junit.jupiter.api.Test;
@@ -771,7 +772,7 @@ public class CSVFormatTest {
final CSVFormat csvFormat = CSVFormat.MYSQL;
final NullPointerException e = assertThrows(NullPointerException.class, () -> csvFormat.format((Object[]) null));
- assertEquals(CSVFormat.class.getName(), e.getStackTrace()[0].getClassName());
+ assertEquals(Objects.class.getName(), e.getStackTrace()[0].getClassName());
}
@Test
diff --git a/src/test/java/org/apache/commons/csv/issues/JiraCsv271Test.java b/src/test/java/org/apache/commons/csv/issues/JiraCsv271Test.java
new file mode 100644
index 0000000..6150a76
--- /dev/null
+++ b/src/test/java/org/apache/commons/csv/issues/JiraCsv271Test.java
@@ -0,0 +1,54 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.commons.csv.issues;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import java.io.IOException;
+import java.io.StringWriter;
+import java.util.Arrays;
+
+import org.apache.commons.csv.CSVFormat;
+import org.apache.commons.csv.CSVPrinter;
+import org.junit.jupiter.api.Test;
+
+public class JiraCsv271Test {
+
+ @Test
+ public void testJiraCsv271_withArray() throws IOException {
+ final CSVFormat csvFormat = CSVFormat.DEFAULT;
+ final StringWriter stringWriter = new StringWriter();
+ try (CSVPrinter printer = new CSVPrinter(stringWriter, csvFormat)) {
+ printer.print("a");
+ printer.printRecord("b","c");
+ }
+ assertEquals("a,b,c\r\n", stringWriter.toString());
+ }
+
+ @Test
+ public void testJiraCsv271_withList() throws IOException {
+ final CSVFormat csvFormat = CSVFormat.DEFAULT;
+ final StringWriter stringWriter = new StringWriter();
+ try (CSVPrinter printer = new CSVPrinter(stringWriter, csvFormat)) {
+ printer.print("a");
+ printer.printRecord(Arrays.asList("b","c"));
+ }
+ assertEquals("a,b,c\r\n", stringWriter.toString());
+ }
+
+}