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