summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Wouters <thomas@python.org>2006-04-26 19:14:46 (GMT)
committerThomas Wouters <thomas@python.org>2006-04-26 19:14:46 (GMT)
commitb5ccd1416e19773f541256480a014a847bfc53f9 (patch)
treed406961d89639f9983f78d103b5a562a78dec2ce
parentcda404bf367d0958c27f1649caa108f11bc696a1 (diff)
downloadcpython-b5ccd1416e19773f541256480a014a847bfc53f9.zip
cpython-b5ccd1416e19773f541256480a014a847bfc53f9.tar.gz
cpython-b5ccd1416e19773f541256480a014a847bfc53f9.tar.bz2
Some more test-size-estimate fixes: test_append and test_insert trigger a
list resize, which overallocates.
-rw-r--r--Lib/test/test_bigmem.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/Lib/test/test_bigmem.py b/Lib/test/test_bigmem.py
index bb7bb54..1d610e5 100644
--- a/Lib/test/test_bigmem.py
+++ b/Lib/test/test_bigmem.py
@@ -833,8 +833,9 @@ class ListTest(unittest.TestCase):
def test_repr_large(self, size):
return self.basic_test_repr(size)
-
- @bigmemtest(minsize=_2G, memuse=8)
+ # list overallocates ~1/8th of the total size (on first expansion) so
+ # the single list.append call puts memuse at 9 bytes per size.
+ @bigmemtest(minsize=_2G, memuse=9)
def test_append(self, size):
l = [object()] * size
l.append(object())
@@ -872,7 +873,8 @@ class ListTest(unittest.TestCase):
self.assertRaises(ValueError, l.index, 1, size - 4, size)
self.assertRaises(ValueError, l.index, 6L)
- @bigmemtest(minsize=_2G + 10, memuse=8)
+ # This tests suffers from overallocation, just like test_append.
+ @bigmemtest(minsize=_2G + 10, memuse=9)
def test_insert(self, size):
l = [1.0] * size
l.insert(size - 1, "A")
@@ -920,6 +922,8 @@ class ListTest(unittest.TestCase):
size -= 1
self.assertEquals(len(l), size)
+ # Because of the earlier l.remove(), this append doesn't trigger
+ # a resize.
l.append(5)
size += 1
self.assertEquals(len(l), size)