summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_unicode.py
diff options
context:
space:
mode:
authorMartin Panter <vadmium+py@gmail.com>2017-01-12 11:54:59 (GMT)
committerMartin Panter <vadmium+py@gmail.com>2017-01-12 11:54:59 (GMT)
commitb71c0956d0904cfdc271cd10d40385c730cf8bcb (patch)
tree5a7a21fb691403d5e8781e6f46eff76575f1e52b /Lib/test/test_unicode.py
parent52e29072e1e4dd247bebb571a360baa0e9b79e72 (diff)
downloadcpython-b71c0956d0904cfdc271cd10d40385c730cf8bcb.zip
cpython-b71c0956d0904cfdc271cd10d40385c730cf8bcb.tar.gz
cpython-b71c0956d0904cfdc271cd10d40385c730cf8bcb.tar.bz2
Issues #1621, #29145: Test for str.join() overflow
Diffstat (limited to 'Lib/test/test_unicode.py')
-rw-r--r--Lib/test/test_unicode.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py
index f696a5b..3136ea1 100644
--- a/Lib/test/test_unicode.py
+++ b/Lib/test/test_unicode.py
@@ -464,6 +464,13 @@ class UnicodeTest(string_tests.CommonTest,
self.checkraises(TypeError, ' ', 'join', [1, 2, 3])
self.checkraises(TypeError, ' ', 'join', ['1', '2', 3])
+ @unittest.skipIf(sys.maxsize > 2**32,
+ 'needs too much memory on a 64-bit platform')
+ def test_join_overflow(self):
+ size = int(sys.maxsize**0.5) + 1
+ seq = ('A' * size,) * size
+ self.assertRaises(OverflowError, ''.join, seq)
+
def test_replace(self):
string_tests.CommonTest.test_replace(self)