msgpack-python/test/test_sequnpack.py

37 lines
785 B
Python
Raw Normal View History

2009-06-26 14:10:20 +09:00
#!/usr/bin/env python
# coding: utf-8
2012-06-19 13:55:14 +09:00
2009-06-26 14:10:20 +09:00
from msgpack import Unpacker
def test_foobar():
unpacker = Unpacker(read_size=3)
2012-06-19 13:55:14 +09:00
unpacker.feed(b'foobar')
assert unpacker.unpack() == ord(b'f')
assert unpacker.unpack() == ord(b'o')
assert unpacker.unpack() == ord(b'o')
assert unpacker.unpack() == ord(b'b')
assert unpacker.unpack() == ord(b'a')
assert unpacker.unpack() == ord(b'r')
2009-06-26 14:10:20 +09:00
try:
o = unpacker.unpack()
2012-06-19 13:55:14 +09:00
print(("Oops!", o))
2009-06-26 14:10:20 +09:00
assert 0
except StopIteration:
assert 1
else:
assert 0
2012-06-19 13:55:14 +09:00
unpacker.feed(b'foo')
unpacker.feed(b'bar')
2009-06-26 14:10:20 +09:00
k = 0
2012-06-19 13:55:14 +09:00
for o, e in zip(unpacker, b'foobarbaz'):
assert o == e
2009-06-26 14:10:20 +09:00
k += 1
2012-06-19 13:55:14 +09:00
assert k == len(b'foobar')
2009-06-26 14:10:20 +09:00
if __name__ == '__main__':
test_foobar()