(original) (raw)
changeset: 83415:c2550f75c8b1 branch: 3.3 parent: 83412:7041401699e9 user: Ezio Melotti ezio.melotti@gmail.com date: Wed Apr 17 04:34:05 2013 +0300 files: Lib/test/test_iterlen.py Misc/NEWS description: #17766: test_iterlen now works with unittest test discovery. Patch by Zachary Ware. diff -r 7041401699e9 -r c2550f75c8b1 Lib/test/test_iterlen.py --- a/Lib/test/test_iterlen.py Wed Apr 17 04:10:26 2013 +0300 +++ b/Lib/test/test_iterlen.py Wed Apr 17 04:34:05 2013 +0300 @@ -60,7 +60,7 @@ except AttributeError: raise TypeError -class TestInvariantWithoutMutations(unittest.TestCase): +class TestInvariantWithoutMutations: def test_invariant(self): it = self.it @@ -87,7 +87,7 @@ ## ------- Concrete Type Tests ------- -class TestRepeat(TestInvariantWithoutMutations): +class TestRepeat(TestInvariantWithoutMutations, unittest.TestCase): def setUp(self): self.it = repeat(None, n) @@ -96,59 +96,59 @@ # The repeat() object can also be infinite self.assertRaises(TypeError, len, repeat(None)) -class TestXrange(TestInvariantWithoutMutations): +class TestXrange(TestInvariantWithoutMutations, unittest.TestCase): def setUp(self): self.it = iter(range(n)) -class TestXrangeCustomReversed(TestInvariantWithoutMutations): +class TestXrangeCustomReversed(TestInvariantWithoutMutations, unittest.TestCase): def setUp(self): self.it = reversed(range(n)) -class TestTuple(TestInvariantWithoutMutations): +class TestTuple(TestInvariantWithoutMutations, unittest.TestCase): def setUp(self): self.it = iter(tuple(range(n))) ## ------- Types that should not be mutated during iteration ------- -class TestDeque(TestTemporarilyImmutable): +class TestDeque(TestTemporarilyImmutable, unittest.TestCase): def setUp(self): d = deque(range(n)) self.it = iter(d) self.mutate = d.pop -class TestDequeReversed(TestTemporarilyImmutable): +class TestDequeReversed(TestTemporarilyImmutable, unittest.TestCase): def setUp(self): d = deque(range(n)) self.it = reversed(d) self.mutate = d.pop -class TestDictKeys(TestTemporarilyImmutable): +class TestDictKeys(TestTemporarilyImmutable, unittest.TestCase): def setUp(self): d = dict.fromkeys(range(n)) self.it = iter(d) self.mutate = d.popitem -class TestDictItems(TestTemporarilyImmutable): +class TestDictItems(TestTemporarilyImmutable, unittest.TestCase): def setUp(self): d = dict.fromkeys(range(n)) self.it = iter(d.items()) self.mutate = d.popitem -class TestDictValues(TestTemporarilyImmutable): +class TestDictValues(TestTemporarilyImmutable, unittest.TestCase): def setUp(self): d = dict.fromkeys(range(n)) self.it = iter(d.values()) self.mutate = d.popitem -class TestSet(TestTemporarilyImmutable): +class TestSet(TestTemporarilyImmutable, unittest.TestCase): def setUp(self): d = set(range(n)) @@ -157,7 +157,7 @@ ## ------- Types that can mutate during iteration ------- -class TestList(TestInvariantWithoutMutations): +class TestList(TestInvariantWithoutMutations, unittest.TestCase): def setUp(self): self.it = iter(range(n)) @@ -176,7 +176,7 @@ d.extend(range(20)) self.assertEqual(len(it), 0) -class TestListReversed(TestInvariantWithoutMutations): +class TestListReversed(TestInvariantWithoutMutations, unittest.TestCase): def setUp(self): self.it = reversed(range(n)) @@ -229,23 +229,5 @@ self.assertEqual(list(NoneLengthHint()), list(range(10))) -def test_main(): - unittests = [ - TestRepeat, - TestXrange, - TestXrangeCustomReversed, - TestTuple, - TestDeque, - TestDequeReversed, - TestDictKeys, - TestDictItems, - TestDictValues, - TestSet, - TestList, - TestListReversed, - TestLengthHintExceptions, - ] - support.run_unittest(*unittests) - if __name__ == "__main__": - test_main() + unittest.main() diff -r 7041401699e9 -r c2550f75c8b1 Misc/NEWS --- a/Misc/NEWS Wed Apr 17 04:10:26 2013 +0300 +++ b/Misc/NEWS Wed Apr 17 04:34:05 2013 +0300 @@ -109,6 +109,9 @@ - Issue #12820: add tests for the xml.dom.minicompat module. Patch by John Chandler and Phil Connell. +- Issue #17766: test_iterlen now works with unittest test discovery. + Patch by Zachary Ware. + - Issue #17690: test_time now works with unittest test discovery. Patch by Zachary Ware. /ezio.melotti@gmail.com