summaryrefslogtreecommitdiffstats
path: root/Lib/test
diff options
context:
space:
mode:
authorSergey B Kirpichev <skirpichev@gmail.com>2024-12-02 13:14:40 (GMT)
committerGitHub <noreply@github.com>2024-12-02 13:14:40 (GMT)
commit930ba0ce605eee9e3b992fa368b00a3f2b7dc4c1 (patch)
tree2d18c93ee8a393461a580394912550d3bcd46cbd /Lib/test
parentc112de1da2d18e3b5c2ea30b0e409f18e574efd8 (diff)
downloadcpython-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.py23
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