From: Nadeem Vawda Date: Sun, 26 Feb 2012 22:42:58 +0000 (+0200) Subject: Issue #13873: Fix crash in test_zlib when running on a small (<4GB) tmpfs. X-Git-Tag: v3.3.0a1~51^2^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=05a4dd83af7c9b7feae88abc6b8be21924e8a4a0;p=python Issue #13873: Fix crash in test_zlib when running on a small (<4GB) tmpfs. --- diff --git a/Lib/test/test_zlib.py b/Lib/test/test_zlib.py index dffa2ca0da..60081e241c 100644 --- a/Lib/test/test_zlib.py +++ b/Lib/test/test_zlib.py @@ -66,24 +66,11 @@ class ChecksumTestCase(unittest.TestCase): # Issue #10276 - check that inputs >=4GB are handled correctly. class ChecksumBigBufferTestCase(unittest.TestCase): - def setUp(self): - with open(support.TESTFN, "wb+") as f: - f.seek(_4G) - f.write(b"asdf") - f.flush() - self.mapping = mmap.mmap(f.fileno(), 0, access=mmap.ACCESS_READ) - - def tearDown(self): - self.mapping.close() - support.unlink(support.TESTFN) - - @unittest.skipUnless(mmap, "mmap() is not available.") - @unittest.skipUnless(sys.maxsize > _4G, "Can't run on a 32-bit system.") - @unittest.skipUnless(support.is_resource_enabled("largefile"), - "May use lots of disk space.") - def test_big_buffer(self): - self.assertEqual(zlib.crc32(self.mapping), 3058686908) - self.assertEqual(zlib.adler32(self.mapping), 82837919) + @bigmemtest(size=_4G + 4, memuse=1, dry_run=False) + def test_big_buffer(self, size): + data = b"nyan" * (_1G + 1) + self.assertEqual(zlib.crc32(data), 1044521549) + self.assertEqual(zlib.adler32(data), 2256789997) class ExceptionTestCase(unittest.TestCase):