8000 Add tests for str8 and bin types. · zhurs/msgpack-python@f162bf6 · GitHub
[go: up one dir, main page]

Skip to content

Commit f162bf6

Browse files
committed
Add tests for str8 and bin types.
1 parent 85eaff3 commit f162bf6

File tree

1 file changed

+69
-0
lines changed

1 file changed

+69
-0
lines changed

test/test_newspec.py

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# coding: utf-8
2+
3+
from msgpack import packb, unpackb
4+
5+
6+
def test_str8():
7+
header = b'\xd9'
8+
data = b'x' * 32
9+
b = packb(data.decode(), use_bin_type=True)
10+
assert len(b) == len(data) + 2
11+
assert b[0:2] == header + b'\x20'
12+
assert b[2:] == data
13+
assert unpackb(b) == data
14+
15+
data = b'x' * 255
16+
b = packb(data.decode(), use_bin_type=True)
17+
assert len(b) == len(data) + 2
18+
assert b[0:2] == header + b'\xff'
19+
assert b[2:] == data
20+
assert unpackb(b) == data
21+
22+
23+
def test_bin8():
24+
header = b'\xc4'
25+
data = b''
26+
b = packb(data, use_bin_type=True)
27+
assert len(b) == len(data) + 2
28+
assert b[0:2] == header + b'\x00'
29+
assert b[2:] == data
30+
assert unpackb(b) == data
31+
32+
data = b'x' * 255
33+
b = packb(data, use_bin_type=True)
34+
assert len(b) == len(data) + 2
35+
assert b[0:2] == header + b'\xff'
36+
assert b[2:] == data
37+
assert unpackb(b) == data
38+
39+
40+
def test_bin16():
41+
header = b'\xc5'
42+
data = b'x' * 256
43+
b = packb(data, use_bin_type=True)
44+
assert len(b) == len(data) + 3
45+
assert b[0:1] == header
46+
assert b[1:3] == b'\x01\x00'
47+
assert b[3:] == data
48+
assert unpackb(b) == data
49+
50+
data = b'x' * 65535
51+
b = packb(data, use_bin_type=True)
52+
assert len(b) == len(data) + 3
53+
assert b[0:1] == header
54+
assert b[1:3] == b'\xff\xff'
55+
assert b[3:] == data
56+
assert unpackb(b) == data
57+
58+
59+
def test_bin32():
60+
header = b'\xc6'
61+
data = b'x' * 65536
62+
b = packb(data, use_bin_type=True)
63+
assert len(b) == len(data) + 5
64+
assert b[0:1] == header
65+
assert b[1:5] == b'\x00\x01\x00\x00'
66+
assert b[5:] == data
67+
assert unpackb(b) == data
68+
69+

0 commit comments

Comments
 (0)
0