From 5c6e6fc57e651711d92f470e68621cc8230e064c Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Sat, 12 Jul 2014 11:03:53 +0200 Subject: [PATCH] Issue #21932: Skip test_os.test_large_read() on 32-bit system --- Lib/test/test_os.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py index 5348b12bb38..e669df83384 100644 --- a/Lib/test/test_os.py +++ b/Lib/test/test_os.py @@ -44,9 +44,9 @@ try: except ImportError: _winapi = None try: - from _testcapi import INT_MAX + from _testcapi import INT_MAX, PY_SSIZE_T_MAX except ImportError: - INT_MAX = 2 ** 31 - 1 + INT_MAX = PY_SSIZE_T_MAX = sys.maxsize from test.script_helper import assert_python_ok @@ -124,6 +124,10 @@ class FileTests(unittest.TestCase): self.assertEqual(s, b"spam") @support.cpython_only + # Skip the test on 32-bit platforms: the number of bytes must fit in a + # Py_ssize_t type + @unittest.skipUnless(INT_MAX < PY_SSIZE_T_MAX, + "needs INT_MAX < PY_SSIZE_T_MAX") @support.bigmemtest(size=INT_MAX + 10, memuse=1, dry_run=False) def test_large_read(self, size): with open(support.TESTFN, "wb") as fp: