1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.juneau.marshaller;
18
19 import static org.apache.juneau.TestUtils.*;
20 import static org.apache.juneau.commons.utils.CollectionUtils.*;
21 import static org.apache.juneau.junit.bct.BctAssertions.*;
22
23 import java.io.*;
24 import java.util.*;
25
26 import org.apache.juneau.*;
27 import org.apache.juneau.collections.*;
28 import org.apache.juneau.parser.*;
29 import org.junit.jupiter.api.*;
30
31 class Csv_Test extends TestBase{
32
33 @Test void a01_to() throws Exception {
34 var in1 = "foo";
35 var in2 = ao(JsonMap.of("a","foo","b","bar"));
36 var expected1 = "value\nfoo\n";
37 var expected2 = "a,b\nfoo,bar\n";
38
39 assertString(expected1, Csv.of(in1));
40 assertString(expected1, Csv.of(in1,stringWriter()));
41 assertString(expected2, Csv.of(in2));
42 assertString(expected2, Csv.of(in2,stringWriter()));
43 }
44
45 @Test void a02_from() {
46 var in1 = "'foo'";
47 var in2 = "{foo:'bar'}";
48
49 assertThrowsWithMessage(ParseException.class, "Not implemented.", ()->Csv.to(in1, String.class));
50 assertThrowsWithMessage(ParseException.class, "Not implemented.", ()->Csv.to(stringReader(in1), String.class));
51 assertThrowsWithMessage(ParseException.class, "Not implemented.", ()->Csv.to(in2, Map.class, String.class, String.class));
52 assertThrowsWithMessage(ParseException.class, "Not implemented.", ()->Csv.to(stringReader(in2), Map.class, String.class, String.class));
53 }
54
55
56
57
58 private static Writer stringWriter() {
59 return new StringWriter();
60 }
61
62 private static Reader stringReader(String s) {
63 return new StringReader(s);
64 }
65 }