Skip to content

Commit 59e5847

Browse files
committed
Add tests to verify Ion handling
1 parent b133019 commit 59e5847

File tree

2 files changed

+27
-22
lines changed

2 files changed

+27
-22
lines changed

ion/src/test/java/com/fasterxml/jackson/dataformat/ion/IonParserTest.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,9 @@ public void testUnknownSymbolExceptionForFieldNameIsWrapped() throws IOException
169169
Assert.assertEquals(JsonToken.START_OBJECT, parser.nextToken());
170170
Assert.assertEquals(JsonToken.FIELD_NAME, parser.nextToken());
171171
Assert.assertEquals("a", parser.currentName());
172+
Assert.assertEquals("a", parser.getText());
173+
Assert.assertEquals("a", parser.getValueAsString());
174+
Assert.assertEquals("a", parser.getValueAsString("b"));
172175
Assert.assertEquals(JsonToken.VALUE_NUMBER_INT, parser.nextValue());
173176
Assert.assertEquals(1, parser.getIntValue());
174177
parser.nextValue(); // Should encounter unknown symbol and fail

ion/src/test/java/com/fasterxml/jackson/dataformat/ion/SimpleIonReadTest.java

Lines changed: 24 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -23,32 +23,37 @@
2323
import com.fasterxml.jackson.core.JsonToken;
2424

2525
public class SimpleIonReadTest {
26+
private final IonFactory ION_F = new IonFactory();
2627
// // // Actual tests; low level
2728

2829
@Test
2930
public void testSimpleStructRead() throws IOException
3031
{
31-
IonFactory f = new IonFactory();
32-
JsonParser jp = f.createParser("{a:\"value\",b:42, c:null}");
33-
assertEquals(JsonToken.START_OBJECT, jp.nextToken());
34-
assertEquals(JsonToken.FIELD_NAME, jp.nextToken());
35-
assertEquals("a", jp.currentName());
36-
assertEquals(JsonToken.VALUE_STRING, jp.nextToken());
37-
assertEquals("value", jp.getText());
38-
assertEquals(JsonToken.VALUE_NUMBER_INT, jp.nextValue());
39-
assertEquals("b", jp.currentName());
40-
assertEquals(42, jp.getIntValue());
41-
assertEquals(JsonToken.VALUE_NULL, jp.nextValue());
42-
assertEquals("c", jp.currentName());
43-
assertEquals(JsonToken.END_OBJECT, jp.nextToken());
44-
jp.close();
32+
try (JsonParser p = ION_F.createParser("{a:\"value\",b:42, c:null}")) {
33+
assertEquals(JsonToken.START_OBJECT, p.nextToken());
34+
assertEquals(JsonToken.FIELD_NAME, p.nextToken());
35+
assertEquals("a", p.currentName());
36+
assertEquals("a", p.getText());
37+
assertEquals("a", p.getValueAsString());
38+
assertEquals("a", p.getValueAsString("x"));
39+
assertEquals(JsonToken.VALUE_STRING, p.nextToken());
40+
assertEquals("value", p.getText());
41+
assertEquals("value", p.getText());
42+
assertEquals("value", p.getValueAsString());
43+
assertEquals("value", p.getValueAsString("x"));
44+
assertEquals(JsonToken.VALUE_NUMBER_INT, p.nextValue());
45+
assertEquals("b", p.currentName());
46+
assertEquals(42, p.getIntValue());
47+
assertEquals(JsonToken.VALUE_NULL, p.nextValue());
48+
assertEquals("c", p.currentName());
49+
assertEquals(JsonToken.END_OBJECT, p.nextToken());
50+
}
4551
}
4652

4753
@Test
4854
public void testSimpleListRead() throws IOException
4955
{
50-
IonFactory f = new IonFactory();
51-
JsonParser jp = f.createParser("[ 12, true, null, \"abc\" ]");
56+
JsonParser jp = ION_F.createParser("[ 12, true, null, \"abc\" ]");
5257
assertEquals(JsonToken.START_ARRAY, jp.nextToken());
5358
assertEquals(JsonToken.VALUE_NUMBER_INT, jp.nextValue());
5459
assertEquals(12, jp.getIntValue());
@@ -63,8 +68,7 @@ public void testSimpleListRead() throws IOException
6368
@Test
6469
public void testSimpleStructAndArray() throws IOException
6570
{
66-
IonFactory f = new IonFactory();
67-
JsonParser jp = f.createParser("{a:[\"b\",\"c\"], b:null}");
71+
JsonParser jp = ION_F.createParser("{a:[\"b\",\"c\"], b:null}");
6872
assertEquals(JsonToken.START_OBJECT, jp.nextToken());
6973
assertEquals(JsonToken.FIELD_NAME, jp.nextToken());
7074
assertEquals("a", jp.currentName());
@@ -85,8 +89,7 @@ public void testSimpleStructAndArray() throws IOException
8589
@Test
8690
public void testMixed() throws IOException
8791
{
88-
IonFactory f = new IonFactory();
89-
JsonParser jp = f.createParser("{a:[ 1, { b: 13}, \"xyz\" ], c:null, d:true}");
92+
JsonParser jp = ION_F.createParser("{a:[ 1, { b: 13}, \"xyz\" ], c:null, d:true}");
9093
assertEquals(JsonToken.START_OBJECT, jp.nextToken());
9194
assertEquals(JsonToken.START_ARRAY, jp.nextValue());
9295
//assertEquals("a", jp.currentName());
@@ -113,8 +116,7 @@ public void testMixed() throws IOException
113116

114117
@Test
115118
public void testNullIonType() throws IOException {
116-
IonFactory f = new IonFactory();
117-
JsonParser jp = f.createParser("{a:\"value\",b:42, c:null.int}");
119+
JsonParser jp = ION_F.createParser("{a:\"value\",b:42, c:null.int}");
118120
assertEquals(JsonToken.START_OBJECT, jp.nextToken());
119121
assertEquals(JsonToken.FIELD_NAME, jp.nextToken());
120122
assertEquals("a", jp.currentName());

0 commit comments

Comments
 (0)