Skip to content
This repository was archived by the owner on Jan 22, 2019. It is now read-only.

Commit 7c71cb0

Browse files
committed
Add failing test for #116
1 parent 2c216cb commit 7c71cb0

File tree

2 files changed

+45
-6
lines changed

2 files changed

+45
-6
lines changed
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package com.fasterxml.jackson.dataformat.csv.failing;
2+
3+
import java.io.StringWriter;
4+
5+
import com.fasterxml.jackson.databind.*;
6+
7+
import com.fasterxml.jackson.dataformat.csv.*;
8+
9+
public class NullWriting116Test extends ModuleTestBase
10+
{
11+
private final CsvMapper csv = new CsvMapper();
12+
13+
// [dataformat#116]
14+
public void testWithObjectArray() throws Exception
15+
{
16+
CsvSchema schema = CsvSchema.builder()
17+
.addColumn("a", CsvSchema.ColumnType.NUMBER)
18+
.addColumn("b", CsvSchema.ColumnType.NUMBER)
19+
.setUseHeader(true)
20+
.build();
21+
ObjectWriter writer = csv.writer(schema);
22+
StringWriter out = new StringWriter();
23+
SequenceWriter sequence = writer.writeValues(out);
24+
25+
sequence.write(new Object[]{ 1, 2 });
26+
// sequence.write(new Object[]{ null, 2 });
27+
sequence.write(new Object[]{ null, null });
28+
sequence.write(new Object[]{ 1, null });
29+
30+
sequence.close();
31+
32+
//System.err.println("CSV:\n"+out);
33+
assertEquals("a,b\n" +
34+
"1,2\n" +
35+
// ",2\n" +
36+
",\n" +
37+
"1,\n", out.toString());
38+
}
39+
40+
}

src/test/java/com/fasterxml/jackson/dataformat/csv/ser/ArrayWriteTest.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,21 +36,21 @@ static class Pojo90 {
3636
/**********************************************************************
3737
*/
3838

39+
private final CsvMapper MAPPER = mapperForCsv();
40+
3941
public void testSimpleExplicit() throws Exception
4042
{
41-
CsvMapper mapper = mapperForCsv();
4243
ValueEntry input = new ValueEntry("foo", "stuff", 1, 2, 3);
43-
String csv = mapper.writerWithSchemaFor(ValueEntry.class)
44+
String csv = MAPPER.writerWithSchemaFor(ValueEntry.class)
4445
.writeValueAsString(input)
4546
.trim();
4647
assertEquals("foo,1;2;3,stuff", csv);
4748
}
4849

4950
public void testSeparatorOverride() throws Exception
5051
{
51-
CsvMapper mapper = mapperForCsv();
5252
ValueEntry input = new ValueEntry("foo", "stuff", 1, 2, 3);
53-
String csv = mapper.writer(CsvSchema.builder()
53+
String csv = MAPPER.writer(CsvSchema.builder()
5454
.addColumn("id")
5555
.addArrayColumn("values", " ")
5656
.addColumn("extra")
@@ -64,8 +64,7 @@ public void testSeparatorOverride() throws Exception
6464
public void testArraysWithNulls() throws Exception
6565
{
6666
Pojo90 value = new Pojo90();
67-
CsvMapper mapper = mapperForCsv();
68-
String csvContent = mapper.writer(mapper.schemaFor(Pojo90.class)
67+
String csvContent = MAPPER.writer(MAPPER.schemaFor(Pojo90.class)
6968
.withHeader())
7069
.writeValueAsString(value);
7170
String[] lines = csvContent.split("\\n");

0 commit comments

Comments
 (0)