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 6bbb815a Test refactoring
6bbb815a is described below
commit 6bbb815a0a317e620a91ceb055687eb0ec9669fb
Author: Gary D. Gregory <[email protected]>
AuthorDate: Sat Jun 21 15:44:30 2025 -0400
Test refactoring
---
.../java/org/apache/commons/csv/CSVParserTest.java | 62 +++++++++++-----------
.../java/org/apache/commons/csv/CsvAssertions.java | 29 ++++++++++
.../apache/commons/csv/issues/JiraCsv253Test.java | 16 ++----
3 files changed, 65 insertions(+), 42 deletions(-)
diff --git a/src/test/java/org/apache/commons/csv/CSVParserTest.java
b/src/test/java/org/apache/commons/csv/CSVParserTest.java
index 1d12357e..22b1417c 100644
--- a/src/test/java/org/apache/commons/csv/CSVParserTest.java
+++ b/src/test/java/org/apache/commons/csv/CSVParserTest.java
@@ -22,7 +22,7 @@ package org.apache.commons.csv;
import static org.apache.commons.csv.Constants.CR;
import static org.apache.commons.csv.Constants.CRLF;
import static org.apache.commons.csv.Constants.LF;
-import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.apache.commons.csv.CsvAssertions.assertValuesEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertInstanceOf;
@@ -217,7 +217,7 @@ class CSVParserTest {
assertEquals(res.length, records.size());
assertFalse(records.isEmpty());
for (int i = 0; i < res.length; i++) {
- assertArrayEquals(res[i], records.get(i).values());
+ assertValuesEquals(res[i], records.get(i));
}
}
}
@@ -479,7 +479,7 @@ class CSVParserTest {
assertEquals(res.length, records.size());
assertFalse(records.isEmpty());
for (int i = 0; i < res.length; i++) {
- assertArrayEquals(res[i], records.get(i).values());
+ assertValuesEquals(res[i], records.get(i));
}
}
}
@@ -496,7 +496,7 @@ class CSVParserTest {
assertEquals(res.length, records.size());
assertFalse(records.isEmpty());
for (int i = 0; i < res.length; i++) {
- assertArrayEquals(res[i], records.get(i).values());
+ assertValuesEquals(res[i], records.get(i));
}
}
}
@@ -521,7 +521,7 @@ class CSVParserTest {
assertEquals(res.length, records.size());
assertFalse(records.isEmpty());
for (int i = 0; i < res.length; i++) {
- assertArrayEquals(res[i], records.get(i).values());
+ assertValuesEquals(res[i], records.get(i));
}
}
}
@@ -540,7 +540,7 @@ class CSVParserTest {
assertEquals(res.length, records.size());
assertFalse(records.isEmpty());
for (int i = 0; i < res.length; i++) {
- assertArrayEquals(res[i], records.get(i).values());
+ assertValuesEquals(res[i], records.get(i));
}
}
}
@@ -556,7 +556,7 @@ class CSVParserTest {
assertEquals(res.length, records.size());
assertFalse(records.isEmpty());
for (int i = 0; i < res.length; i++) {
- assertArrayEquals(res[i], records.get(i).values());
+ assertValuesEquals(res[i], records.get(i));
}
}
}
@@ -570,7 +570,7 @@ class CSVParserTest {
assertEquals(res.length, records.size());
assertFalse(records.isEmpty());
for (int i = 0; i < res.length; i++) {
- assertArrayEquals(res[i], records.get(i).values());
+ assertValuesEquals(res[i], records.get(i));
}
}
}
@@ -629,9 +629,9 @@ class CSVParserTest {
records.add(record);
}
assertEquals(3, records.size());
- assertArrayEquals(new String[] { "a", "b", "c" },
records.get(0).values());
- assertArrayEquals(new String[] { "1", "2", "3" },
records.get(1).values());
- assertArrayEquals(new String[] { "x", "y", "z" },
records.get(2).values());
+ assertValuesEquals(new String[] { "a", "b", "c" }, records.get(0));
+ assertValuesEquals(new String[] { "1", "2", "3" }, records.get(1));
+ assertValuesEquals(new String[] { "x", "y", "z" }, records.get(2));
}
}
@@ -756,7 +756,7 @@ class CSVParserTest {
void testGetLine() throws IOException {
try (CSVParser parser = CSVParser.parse(CSV_INPUT,
CSVFormat.DEFAULT.withIgnoreSurroundingSpaces())) {
for (final String[] re : RESULT) {
- assertArrayEquals(re, parser.nextRecord().values());
+ assertValuesEquals(re, parser.nextRecord());
}
assertNull(parser.nextRecord());
@@ -782,7 +782,7 @@ class CSVParserTest {
void testGetOneLine() throws IOException {
try (CSVParser parser = CSVParser.parse(CSV_INPUT_1,
CSVFormat.DEFAULT)) {
final CSVRecord record = parser.getRecords().get(0);
- assertArrayEquals(RESULT[0], record.values());
+ assertValuesEquals(RESULT[0], record);
}
}
@@ -803,11 +803,11 @@ class CSVParserTest {
writer.append(CSV_INPUT_1);
writer.append(format.getRecordSeparator());
final CSVRecord record1 = parser.nextRecord();
- assertArrayEquals(RESULT[0], record1.values());
+ assertValuesEquals(RESULT[0], record1);
writer.append(CSV_INPUT_2);
writer.append(format.getRecordSeparator());
final CSVRecord record2 = parser.nextRecord();
- assertArrayEquals(RESULT[1], record2.values());
+ assertValuesEquals(RESULT[1], record2);
}
}
@@ -877,7 +877,7 @@ class CSVParserTest {
assertEquals(RESULT.length, records.size());
assertFalse(records.isEmpty());
for (int i = 0; i < RESULT.length; i++) {
- assertArrayEquals(RESULT[i], records.get(i).values());
+ assertValuesEquals(RESULT[i], records.get(i));
}
}
}
@@ -899,7 +899,7 @@ class CSVParserTest {
assertEquals(expectedLength, records.size());
assertFalse(records.isEmpty());
for (int i = 0; i < expectedLength; i++) {
- assertArrayEquals(RESULT[i], records.get(i).values());
+ assertValuesEquals(RESULT[i], records.get(i));
}
}
}
@@ -1155,12 +1155,12 @@ class CSVParserTest {
final Iterator<CSVRecord> iterator = parser.iterator();
assertTrue(iterator.hasNext());
assertThrows(UnsupportedOperationException.class,
iterator::remove);
- assertArrayEquals(new String[] { "a", "b", "c" },
iterator.next().values());
- assertArrayEquals(new String[] { "1", "2", "3" },
iterator.next().values());
+ assertValuesEquals(new String[] { "a", "b", "c" },
iterator.next());
+ assertValuesEquals(new String[] { "1", "2", "3" },
iterator.next());
assertTrue(iterator.hasNext());
assertTrue(iterator.hasNext());
assertTrue(iterator.hasNext());
- assertArrayEquals(new String[] { "x", "y", "z" },
iterator.next().values());
+ assertValuesEquals(new String[] { "x", "y", "z" },
iterator.next());
assertFalse(iterator.hasNext());
assertThrows(NoSuchElementException.class, iterator::next);
}
@@ -1174,20 +1174,20 @@ class CSVParserTest {
final Iterator<CSVRecord> iterator = parser.iterator();
assertTrue(iterator.hasNext());
assertThrows(UnsupportedOperationException.class,
iterator::remove);
- assertArrayEquals(new String[] { "a", "b", "c" },
iterator.next().values());
+ assertValuesEquals(new String[] { "a", "b", "c" },
iterator.next());
final boolean noLimit = maxRows <= 0;
final int fixtureLen = 3;
final long expectedLen = noLimit ? fixtureLen :
Math.min(fixtureLen, maxRows);
if (expectedLen > 1) {
assertTrue(iterator.hasNext());
- assertArrayEquals(new String[] { "1", "2", "3" },
iterator.next().values());
+ assertValuesEquals(new String[] { "1", "2", "3" },
iterator.next());
}
assertEquals(expectedLen > 2, iterator.hasNext());
// again
assertEquals(expectedLen > 2, iterator.hasNext());
if (expectedLen == fixtureLen) {
assertTrue(iterator.hasNext());
- assertArrayEquals(new String[] { "x", "y", "z" },
iterator.next().values());
+ assertValuesEquals(new String[] { "x", "y", "z" },
iterator.next());
}
assertFalse(iterator.hasNext());
assertThrows(NoSuchElementException.class, iterator::next);
@@ -1584,7 +1584,7 @@ class CSVParserTest {
.setFormat(format.getFormat())
.get()) {
for (final String[] line : lines) {
- assertArrayEquals(line, csvRecords.nextRecord().values());
+ assertValuesEquals(line, csvRecords.nextRecord());
}
assertNull(csvRecords.nextRecord());
}
@@ -1715,7 +1715,7 @@ class CSVParserTest {
assertEquals(res.length, records.size());
assertFalse(records.isEmpty());
for (int i = 0; i < res.length; i++) {
- assertArrayEquals(res[i], records.get(i).values());
+ assertValuesEquals(res[i], records.get(i));
}
}
}
@@ -1727,9 +1727,9 @@ class CSVParserTest {
try (CSVParser parser = CSVFormat.DEFAULT.parse(in)) {
final List<CSVRecord> list =
parser.stream().collect(Collectors.toList());
assertFalse(list.isEmpty());
- assertArrayEquals(new String[] { "a", "b", "c" },
list.get(0).values());
- assertArrayEquals(new String[] { "1", "2", "3" },
list.get(1).values());
- assertArrayEquals(new String[] { "x", "y", "z" },
list.get(2).values());
+ assertValuesEquals(new String[] { "a", "b", "c" }, list.get(0));
+ assertValuesEquals(new String[] { "1", "2", "3" }, list.get(1));
+ assertValuesEquals(new String[] { "x", "y", "z" }, list.get(2));
}
}
@@ -1740,12 +1740,12 @@ class CSVParserTest {
try (CSVParser parser =
CSVFormat.DEFAULT.builder().setMaxRows(maxRows).get().parse(in)) {
final List<CSVRecord> list =
parser.stream().collect(Collectors.toList());
assertFalse(list.isEmpty());
- assertArrayEquals(new String[] { "a", "b", "c" },
list.get(0).values());
+ assertValuesEquals(new String[] { "a", "b", "c" }, list.get(0));
if (maxRows <= 0 || maxRows > 1) {
- assertArrayEquals(new String[] { "1", "2", "3" },
list.get(1).values());
+ assertValuesEquals(new String[] { "1", "2", "3" },
list.get(1));
}
if (maxRows <= 0 || maxRows > 2) {
- assertArrayEquals(new String[] { "x", "y", "z" },
list.get(2).values());
+ assertValuesEquals(new String[] { "x", "y", "z" },
list.get(2));
}
}
}
diff --git a/src/test/java/org/apache/commons/csv/CsvAssertions.java
b/src/test/java/org/apache/commons/csv/CsvAssertions.java
new file mode 100644
index 00000000..b6c2b5d9
--- /dev/null
+++ b/src/test/java/org/apache/commons/csv/CsvAssertions.java
@@ -0,0 +1,29 @@
+/*
+ * 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
+ *
+ * https://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;
+
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+
+public class CsvAssertions {
+
+ public static void assertValuesEquals(final String[] expected, final
CSVRecord actual) {
+ assertArrayEquals(expected, actual.values());
+ }
+}
diff --git a/src/test/java/org/apache/commons/csv/issues/JiraCsv253Test.java
b/src/test/java/org/apache/commons/csv/issues/JiraCsv253Test.java
index b78c1baa..13694085 100644
--- a/src/test/java/org/apache/commons/csv/issues/JiraCsv253Test.java
+++ b/src/test/java/org/apache/commons/csv/issues/JiraCsv253Test.java
@@ -18,7 +18,7 @@
*/
package org.apache.commons.csv.issues;
-import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.apache.commons.csv.CsvAssertions.assertValuesEquals;
import java.io.IOException;
import java.io.StringReader;
@@ -35,22 +35,16 @@ import org.junit.jupiter.api.Test;
*/
class JiraCsv253Test {
- private void assertArrayEqual(final String[] expected, final CSVRecord
actual) {
- for (int i = 0; i < expected.length; i++) {
- assertEquals(expected[i], actual.get(i));
- }
- }
-
@Test
void testHandleAbsentValues() throws IOException {
final String source = "\"John\",,\"Doe\"\n" + ",\"AA\",123\n" +
"\"John\",90,\n" + "\"\",,90";
final CSVFormat csvFormat =
CSVFormat.DEFAULT.builder().setQuoteMode(QuoteMode.NON_NUMERIC).get();
try (CSVParser parser = csvFormat.parse(new StringReader(source))) {
final Iterator<CSVRecord> csvRecords = parser.iterator();
- assertArrayEqual(new String[] {"John", null, "Doe"},
csvRecords.next());
- assertArrayEqual(new String[] {null, "AA", "123"},
csvRecords.next());
- assertArrayEqual(new String[] {"John", "90", null},
csvRecords.next());
- assertArrayEqual(new String[] {"", null, "90"}, csvRecords.next());
+ assertValuesEquals(new String[] {"John", null, "Doe"},
csvRecords.next());
+ assertValuesEquals(new String[] {null, "AA", "123"},
csvRecords.next());
+ assertValuesEquals(new String[] {"John", "90", null},
csvRecords.next());
+ assertValuesEquals(new String[] {"", null, "90"},
csvRecords.next());
}
}
}