Decompressed data buffering should be limited
(self)
| 715 | self.assertEqual(f.name, self.filename) |
| 716 | |
| 717 | def test_decompress_limited(self): |
| 718 | """Decompressed data buffering should be limited""" |
| 719 | bomb = gzip.compress(b'\0' * int(2e6), compresslevel=9) |
| 720 | self.assertLess(len(bomb), io.DEFAULT_BUFFER_SIZE) |
| 721 | |
| 722 | bomb = io.BytesIO(bomb) |
| 723 | decomp = gzip.GzipFile(fileobj=bomb) |
| 724 | self.assertEqual(decomp.read(1), b'\0') |
| 725 | max_decomp = 1 + io.DEFAULT_BUFFER_SIZE |
| 726 | self.assertLessEqual(decomp._buffer.raw.tell(), max_decomp, |
| 727 | "Excessive amount of data was decompressed") |
| 728 | |
| 729 | # Testing compress/decompress shortcut functions |
| 730 |
nothing calls this directly
no test coverage detected