mirror of
https://github.com/msgpack/msgpack-python.git
synced 2025-10-19 20:03:16 +00:00
Add tests and bugfix.
This commit is contained in:
parent
cb78959678
commit
37c2ad63af
3 changed files with 25 additions and 5 deletions
|
@ -1,6 +1,6 @@
|
|||
# coding: utf-8
|
||||
|
||||
from msgpack import packb, unpackb
|
||||
from msgpack import packb, unpackb, ExtType
|
||||
|
||||
|
||||
def test_str8():
|
||||
|
@ -66,4 +66,23 @@ def test_bin32():
|
|||
assert b[5:] == data
|
||||
assert unpackb(b) == data
|
||||
|
||||
|
||||
def test_ext():
|
||||
def check(ext, packed):
|
||||
assert packb(ext) == packed
|
||||
assert unpackb(packed) == ext
|
||||
check(ExtType(0x42, b'Z'), b'\xd4\x42Z') # fixext 1
|
||||
check(ExtType(0x42, b'ZZ'), b'\xd5\x42ZZ') # fixext 2
|
||||
check(ExtType(0x42, b'Z'*4), b'\xd6\x42' + b'Z'*4) # fixext 4
|
||||
check(ExtType(0x42, b'Z'*8), b'\xd7\x42' + b'Z'*8) # fixext 8
|
||||
check(ExtType(0x42, b'Z'*16), b'\xd8\x42' + b'Z'*16) # fixext 16
|
||||
# ext 8
|
||||
check(ExtType(0x42, b''), b'\xc7\x00\x42')
|
||||
check(ExtType(0x42, b'Z'*255), b'\xc7\xff\x42' + b'Z'*255)
|
||||
# ext 16
|
||||
check(ExtType(0x42, b'Z'*256), b'\xc8\x01\x00\x42' + b'Z'*256)
|
||||
check(ExtType(0x42, b'Z'*0xffff), b'\xc8\xff\xff\x42' + b'Z'*0xffff)
|
||||
# ext 32
|
||||
check(ExtType(0x42, b'Z'*0x10000), b'\xc9\x00\x01\x00\x00\x42' + b'Z'*0x10000)
|
||||
# needs large memory
|
||||
#check(ExtType(0x42, b'Z'*0xffffffff),
|
||||
# b'\xc9\xff\xff\xff\xff\x42' + b'Z'*0xffffffff)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue