Mercurial > hg > Members > sugi > MessagePack-java
comparison src/test/java/org/msgpack/unpacker/TestUnpackerSkip.java @ 0:cb825acd883a
first commit
author | sugi |
---|---|
date | Sat, 18 Oct 2014 15:06:15 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:cb825acd883a |
---|---|
1 package org.msgpack.unpacker; | |
2 | |
3 import static org.junit.Assert.assertEquals; | |
4 | |
5 import org.junit.Test; | |
6 import org.msgpack.MessagePack; | |
7 import org.msgpack.packer.BufferPacker; | |
8 import org.msgpack.unpacker.BufferUnpacker; | |
9 import org.msgpack.type.Value; | |
10 import org.msgpack.type.ValueFactory; | |
11 | |
12 public class TestUnpackerSkip { | |
13 @Test | |
14 public void testPrimitive() throws Exception { | |
15 MessagePack msgpack = new MessagePack(); | |
16 | |
17 BufferPacker packer = msgpack.createBufferPacker(); | |
18 | |
19 for (int i = 0; i < 10; i++) { | |
20 packer.write(1); | |
21 packer.write(i); | |
22 } | |
23 | |
24 byte[] bytes = packer.toByteArray(); | |
25 BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); | |
26 | |
27 for (int i = 0; i < 10; i++) { | |
28 unpacker.skip(); | |
29 int n = unpacker.readInt(); | |
30 assertEquals(i, n); | |
31 } | |
32 } | |
33 | |
34 @Test | |
35 public void testNested() throws Exception { | |
36 MessagePack msgpack = new MessagePack(); | |
37 | |
38 BufferPacker packer = msgpack.createBufferPacker(); | |
39 | |
40 Value v1 = ValueFactory.createArrayValue(new Value[] { | |
41 ValueFactory.createRawValue("a"), | |
42 ValueFactory.createMapValue(new Value[] { | |
43 ValueFactory.createRawValue("k1"), | |
44 ValueFactory | |
45 .createArrayValue(new Value[] { ValueFactory | |
46 .createIntegerValue(1) }) }) }); | |
47 | |
48 Value v2 = ValueFactory.createArrayValue(new Value[] { | |
49 ValueFactory.createMapValue(new Value[] { | |
50 ValueFactory.createRawValue("k1"), | |
51 ValueFactory | |
52 .createArrayValue(new Value[] { ValueFactory | |
53 .createIntegerValue(1) }), | |
54 ValueFactory.createRawValue("k2"), | |
55 ValueFactory | |
56 .createArrayValue(new Value[] { ValueFactory | |
57 .createIntegerValue(2) }) }), | |
58 ValueFactory.createMapValue(new Value[] { | |
59 ValueFactory.createRawValue("k1"), | |
60 ValueFactory | |
61 .createArrayValue(new Value[] { ValueFactory | |
62 .createIntegerValue(1) }), | |
63 ValueFactory.createRawValue("k2"), | |
64 ValueFactory | |
65 .createArrayValue(new Value[] { ValueFactory | |
66 .createIntegerValue(2) }) }), | |
67 ValueFactory.createRawValue("a") }); | |
68 | |
69 for (int i = 0; i < 10; i++) { | |
70 packer.write(v1); | |
71 packer.write(v2); | |
72 } | |
73 | |
74 byte[] bytes = packer.toByteArray(); | |
75 BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); | |
76 | |
77 for (int i = 0; i < 10; i++) { | |
78 unpacker.skip(); | |
79 Value v2a = unpacker.readValue(); | |
80 assertEquals(v2, v2a); | |
81 } | |
82 } | |
83 } |