diff options
author | Sergey B Kirpichev <skirpichev@gmail.com> | 2024-12-02 13:14:40 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-12-02 13:14:40 (GMT) |
commit | 930ba0ce605eee9e3b992fa368b00a3f2b7dc4c1 (patch) | |
tree | 2d18c93ee8a393461a580394912550d3bcd46cbd /Lib/test | |
parent | c112de1da2d18e3b5c2ea30b0e409f18e574efd8 (diff) | |
download | cpython-930ba0ce605eee9e3b992fa368b00a3f2b7dc4c1.zip cpython-930ba0ce605eee9e3b992fa368b00a3f2b7dc4c1.tar.gz cpython-930ba0ce605eee9e3b992fa368b00a3f2b7dc4c1.tar.bz2 |
gh-126618: fix repr(itertools.count(sys.maxsize)) (#127048)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_itertools.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/Lib/test/test_itertools.py b/Lib/test/test_itertools.py index b94d688..f0fd1d2 100644 --- a/Lib/test/test_itertools.py +++ b/Lib/test/test_itertools.py @@ -518,6 +518,15 @@ class TestBasicOps(unittest.TestCase): self.assertEqual(next(c), -8) self.assertEqual(repr(count(10.25)), 'count(10.25)') self.assertEqual(repr(count(10.0)), 'count(10.0)') + + self.assertEqual(repr(count(maxsize)), f'count({maxsize})') + c = count(maxsize - 1) + self.assertEqual(repr(c), f'count({maxsize - 1})') + next(c) # c is now at masize + self.assertEqual(repr(c), f'count({maxsize})') + next(c) + self.assertEqual(repr(c), f'count({maxsize + 1})') + self.assertEqual(type(next(count(10.0))), float) for i in (-sys.maxsize-5, -sys.maxsize+5 ,-10, -1, 0, 10, sys.maxsize-5, sys.maxsize+5): # Test repr @@ -578,6 +587,20 @@ class TestBasicOps(unittest.TestCase): self.assertEqual(type(next(c)), int) self.assertEqual(type(next(c)), float) + c = count(maxsize -2, 2) + self.assertEqual(repr(c), f'count({maxsize - 2}, 2)') + next(c) # c is now at masize + self.assertEqual(repr(c), f'count({maxsize}, 2)') + next(c) + self.assertEqual(repr(c), f'count({maxsize + 2}, 2)') + + c = count(maxsize + 1, -1) + self.assertEqual(repr(c), f'count({maxsize + 1}, -1)') + next(c) # c is now at masize + self.assertEqual(repr(c), f'count({maxsize}, -1)') + next(c) + self.assertEqual(repr(c), f'count({maxsize - 1}, -1)') + @threading_helper.requires_working_threading() def test_count_threading(self, step=1): # this test verifies multithreading consistency, which is |