tests/uzlib_decompio_gz: Test for DecompIO with gzip bitstream.

This commit is contained in:
Paul Sokolovsky 2016-09-24 15:43:23 +03:00
parent 7b901d6fb7
commit d46de80162
2 changed files with 50 additions and 0 deletions

View File

@ -0,0 +1,39 @@
try:
import zlib
except ImportError:
import uzlib as zlib
import uio as io
# gzip bitstream
buf = io.BytesIO(b'\x1f\x8b\x08\x08\x99\x0c\xe5W\x00\x03hello\x00\xcbH\xcd\xc9\xc9\x07\x00\x86\xa6\x106\x05\x00\x00\x00')
inp = zlib.DecompIO(buf, 16 + 8)
print(buf.seek(0, 1))
print(inp.read(1))
print(buf.seek(0, 1))
print(inp.read(2))
print(inp.read())
print(buf.seek(0, 1))
print(inp.read(1))
print(inp.read())
print(buf.seek(0, 1))
# broken header
buf = io.BytesIO(b'\x1f\x8c\x08\x08\x99\x0c\xe5W\x00\x03hello\x00\xcbH\xcd\xc9\xc9\x07\x00\x86\xa6\x106\x05\x00\x00\x00')
try:
inp = zlib.DecompIO(buf, 16 + 8)
except ValueError:
print("ValueError")
# broken crc32
buf = io.BytesIO(b'\x1f\x8b\x08\x08\x99\x0c\xe5W\x00\x03hello\x00\xcbH\xcd\xc9\xc9\x07\x00\x86\xa7\x106\x05\x00\x00\x00')
inp = zlib.DecompIO(buf, 16 + 8)
try:
inp.read(6)
except OSError as e:
print(repr(e))
# broken uncompressed size - not checked so far
#buf = io.BytesIO(b'\x1f\x8b\x08\x08\x99\x0c\xe5W\x00\x03hello\x00\xcbH\xcd\xc9\xc9\x07\x00\x86\xa6\x106\x06\x00\x00\x00')
#inp = zlib.DecompIO(buf, 16 + 8)
#inp.read(6)

View File

@ -0,0 +1,11 @@
16
b'h'
18
b'el'
b'lo'
31
b''
b''
31
ValueError
OSError(22,)