Commit 6451497d authored by Ezio Melotti's avatar Ezio Melotti

#7782: add a test for test_iter.

parent 01560de2
...@@ -908,6 +908,21 @@ class TestCase(unittest.TestCase): ...@@ -908,6 +908,21 @@ class TestCase(unittest.TestCase):
except TypeError: except TypeError:
pass pass
def test_extending_list_with_iterator_does_not_segfault(self):
# The code to extend a list with an iterator has a fair
# amount of nontrivial logic in terms of guessing how
# much memory to allocate in advance, "stealing" refs,
# and then shrinking at the end. This is a basic smoke
# test for that scenario.
def gen():
for i in range(500):
yield i
lst = [0] * 500
for i in range(240):
lst.pop(0)
lst.extend(gen())
self.assertEqual(len(lst), 760)
def test_main(): def test_main():
run_unittest(TestCase) run_unittest(TestCase)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment