Skip to content

Commit 48d693c

Browse files
committed
Add test for .skip()
1 parent 9963522 commit 48d693c

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

msgpack/_msgpack.pyx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -451,7 +451,7 @@ cdef class Unpacker(object):
451451
else:
452452
self.file_like = None
453453

454-
cdef _unpack(self, bint construct):
454+
cdef object _unpack(self, bint construct):
455455
cdef int ret
456456
cdef object obj
457457
while 1:

test/test_sequnpack.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,20 @@ def test_foobar():
2828
k += 1
2929
assert k == len(b'foobar')
3030

31+
def test_foobar_skip():
32+
unpacker = Unpacker(read_size=3)
33+
unpacker.feed(b'foobar')
34+
assert unpacker.unpack() == ord(b'f')
35+
unpacker.skip()
36+
assert unpacker.unpack() == ord(b'o')
37+
unpacker.skip()
38+
assert unpacker.unpack() == ord(b'a')
39+
unpacker.skip()
40+
try:
41+
o = unpacker.unpack()
42+
assert 0, "should raise exception"
43+
except StopIteration:
44+
assert 1, "ok"
3145

3246
def test_maxbuffersize():
3347
nose.tools.assert_raises(ValueError, Unpacker, read_size=5, max_buffer_size=3)

0 commit comments

Comments
 (0)