From: Ezio Melotti Date: Wed, 17 Apr 2013 01:36:45 +0000 (+0300) Subject: #17766: merge with 3.3. X-Git-Tag: v3.4.0a1~903 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=abe46fd8108e64b1ae224678025b0256d4705884;p=python #17766: merge with 3.3. --- abe46fd8108e64b1ae224678025b0256d4705884 diff --cc Lib/test/test_iterlen.py index 57f7101bee,9101f6c884..152f5fc0cb --- a/Lib/test/test_iterlen.py +++ b/Lib/test/test_iterlen.py @@@ -49,8 -49,18 +49,8 @@@ from operator import length_hin n = 10 -def len(obj): - try: - return _len(obj) - except TypeError: - try: - # note: this is an internal undocumented API, - # don't rely on it in your own programs - return obj.__length_hint__() - except AttributeError: - raise TypeError - class TestInvariantWithoutMutations(unittest.TestCase): + class TestInvariantWithoutMutations: def test_invariant(self): it = self.it @@@ -82,7 -92,11 +82,7 @@@ class TestRepeat(TestInvariantWithoutMu def setUp(self): self.it = repeat(None, n) - class TestXrange(TestInvariantWithoutMutations): - def test_no_len_for_infinite_repeat(self): - # The repeat() object can also be infinite - self.assertRaises(TypeError, len, repeat(None)) - + class TestXrange(TestInvariantWithoutMutations, unittest.TestCase): def setUp(self): self.it = iter(range(n)) @@@ -153,17 -167,16 +153,17 @@@ class TestList(TestInvariantWithoutMuta it = iter(d) next(it) next(it) - self.assertEqual(len(it), n-2) + self.assertEqual(length_hint(it), n - 2) d.append(n) - self.assertEqual(len(it), n-1) # grow with append + self.assertEqual(length_hint(it), n - 1) # grow with append d[1:] = [] - self.assertEqual(len(it), 0) + self.assertEqual(length_hint(it), 0) self.assertEqual(list(it), []) d.extend(range(20)) - self.assertEqual(len(it), 0) + self.assertEqual(length_hint(it), 0) + - class TestListReversed(TestInvariantWithoutMutations): + class TestListReversed(TestInvariantWithoutMutations, unittest.TestCase): def setUp(self): self.it = reversed(range(n))