mirror of
				https://github.com/msgpack/msgpack-python.git
				synced 2025-11-04 03:20:56 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
	
		
			785 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
	
		
			785 B
		
	
	
	
		
			Python
		
	
	
	
	
	
#!/usr/bin/env python
 | 
						|
# coding: utf-8
 | 
						|
 | 
						|
 | 
						|
 | 
						|
from msgpack import Unpacker
 | 
						|
 | 
						|
def test_foobar():
 | 
						|
    unpacker = Unpacker(read_size=3)
 | 
						|
    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')
 | 
						|
    try:
 | 
						|
        o = unpacker.unpack()
 | 
						|
        print(("Oops!", o))
 | 
						|
        assert 0
 | 
						|
    except StopIteration:
 | 
						|
        assert 1
 | 
						|
    else:
 | 
						|
        assert 0
 | 
						|
    unpacker.feed(b'foo')
 | 
						|
    unpacker.feed(b'bar')
 | 
						|
 | 
						|
    k = 0
 | 
						|
    for o, e in zip(unpacker, b'foobarbaz'):
 | 
						|
        assert o == e
 | 
						|
        k += 1
 | 
						|
    assert k == len(b'foobar')
 | 
						|
 | 
						|
if __name__ == '__main__':
 | 
						|
    test_foobar()
 | 
						|
 |