msgpack-python/test/test_sequnpack.py

33 lines
765 B
Python
Raw Normal View History

2009-06-26 14:10:20 +09:00
#!/usr/bin/env python
# coding: utf-8
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 14:20:56 +09:00
assert 0, "should raise exception"
2009-06-26 14:10:20 +09:00
except StopIteration:
2012-06-19 14:20:56 +09:00
assert 1, "ok"
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 14:20:56 +09:00
for o, e in zip(unpacker, 'foobarbaz'):
assert o == ord(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()