From 61e2dfd97dde31c6f6f1005aa0c0a1f616963f7a Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Sun, 4 Sep 2016 14:45:27 +0300 Subject: [PATCH] tests/extmod/uzlib_decompio: Add zlib bitstream testcases. --- tests/extmod/uzlib_decompio.py | 15 ++++++++++++++- tests/extmod/uzlib_decompio.py.exp | 3 +++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/tests/extmod/uzlib_decompio.py b/tests/extmod/uzlib_decompio.py index ee3204d07c..75a6df0ca4 100644 --- a/tests/extmod/uzlib_decompio.py +++ b/tests/extmod/uzlib_decompio.py @@ -7,7 +7,7 @@ import uio as io # Raw DEFLATE bitstream buf = io.BytesIO(b'\xcbH\xcd\xc9\xc9\x07\x00') -inp = zlib.DecompIO(buf) +inp = zlib.DecompIO(buf, -8) print(buf.seek(0, 1)) print(inp.read(1)) print(buf.seek(0, 1)) @@ -17,3 +17,16 @@ print(buf.seek(0, 1)) print(inp.read(1)) print(inp.read()) print(buf.seek(0, 1)) + + +# zlib bitstream +inp = zlib.DecompIO(io.BytesIO(b'x\x9c30\xa0=\x00\x00\xb3q\x12\xc1')) +print(inp.read(10)) +print(inp.read()) + +# zlib bitstream, wrong checksum +inp = zlib.DecompIO(io.BytesIO(b'x\x9c30\xa0=\x00\x00\xb3q\x12\xc0')) +try: + print(inp.read()) +except OSError as e: + print(repr(e)) diff --git a/tests/extmod/uzlib_decompio.py.exp b/tests/extmod/uzlib_decompio.py.exp index 6ef811d7db..3f5f360fa3 100644 --- a/tests/extmod/uzlib_decompio.py.exp +++ b/tests/extmod/uzlib_decompio.py.exp @@ -7,3 +7,6 @@ b'lo' b'' b'' 7 +b'0000000000' +b'000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' +OSError(22,)