2010-11-02 14:09:50 +09:00
|
|
|
#!/usr/bin/env python
|
|
|
|
# coding: utf-8
|
|
|
|
|
|
|
|
from msgpack import packb, unpackb
|
|
|
|
|
2012-12-29 11:24:25 +09:00
|
|
|
|
2010-11-02 14:09:50 +09:00
|
|
|
def test_unpack_buffer():
|
|
|
|
from array import array
|
2019-12-05 18:51:45 +09:00
|
|
|
|
|
|
|
buf = array("b")
|
2019-01-25 20:52:57 +09:00
|
|
|
try:
|
2019-12-05 18:51:45 +09:00
|
|
|
buf.frombytes(packb((b"foo", b"bar")))
|
2019-01-25 20:52:57 +09:00
|
|
|
except AttributeError: # PY2
|
2019-12-05 18:51:45 +09:00
|
|
|
buf.fromstring(packb((b"foo", b"bar")))
|
2012-09-24 02:12:55 +09:00
|
|
|
obj = unpackb(buf, use_list=1)
|
2019-12-05 18:51:45 +09:00
|
|
|
assert [b"foo", b"bar"] == obj
|
2010-11-02 14:09:50 +09:00
|
|
|
|
2013-12-15 16:22:39 +00:00
|
|
|
|
|
|
|
def test_unpack_bytearray():
|
2019-12-05 18:51:45 +09:00
|
|
|
buf = bytearray(packb(("foo", "bar")))
|
2013-12-15 16:22:39 +00:00
|
|
|
obj = unpackb(buf, use_list=1)
|
2019-12-05 18:51:45 +09:00
|
|
|
assert [b"foo", b"bar"] == obj
|
2014-02-17 04:06:58 +09:00
|
|
|
expected_type = bytes
|
|
|
|
assert all(type(s) == expected_type for s in obj)
|
2016-05-07 15:18:20 +02:00
|
|
|
|
|
|
|
|
|
|
|
def test_unpack_memoryview():
|
2019-12-05 18:51:45 +09:00
|
|
|
buf = bytearray(packb(("foo", "bar")))
|
2016-05-07 15:18:20 +02:00
|
|
|
view = memoryview(buf)
|
|
|
|
obj = unpackb(view, use_list=1)
|
2019-12-05 18:51:45 +09:00
|
|
|
assert [b"foo", b"bar"] == obj
|
2016-05-07 15:18:20 +02:00
|
|
|
expected_type = bytes
|
|
|
|
assert all(type(s) == expected_type for s in obj)
|