]> granicus.if.org Git - python/commitdiff
Ensure that width and precision in string formatting test have type int, not long.
authorSerhiy Storchaka <storchaka@gmail.com>
Sat, 19 Jan 2013 19:06:35 +0000 (21:06 +0200)
committerSerhiy Storchaka <storchaka@gmail.com>
Sat, 19 Jan 2013 19:06:35 +0000 (21:06 +0200)
Fix a regression from changeset d544873d62e9 (issue #15989).

Lib/test/string_tests.py

index f73d0ee188018b346bbb70bed23b7ebb34336af8..d3412d0cdc63a6c39bb02e97d594499dbaa74017 100644 (file)
@@ -1114,19 +1114,19 @@ class MixinStrUnicodeUserStringTest:
         self.checkraises(TypeError, '%10.*f', '__mod__', ('foo', 42.))
         self.checkraises(ValueError, '%10', '__mod__', (42,))
 
-        if _testcapi.PY_SSIZE_T_MAX < sys.maxint:
-            self.checkraises(OverflowError, '%*s', '__mod__',
-                            (_testcapi.PY_SSIZE_T_MAX + 1, ''))
-        if _testcapi.INT_MAX < sys.maxint:
-            self.checkraises(OverflowError, '%.*f', '__mod__',
-                            (_testcapi.INT_MAX + 1, 1. / 7))
+        width = int(_testcapi.PY_SSIZE_T_MAX + 1)
+        if width <= sys.maxint:
+            self.checkraises(OverflowError, '%*s', '__mod__', (width, ''))
+        prec = int(_testcapi.INT_MAX + 1)
+        if prec <= sys.maxint:
+            self.checkraises(OverflowError, '%.*f', '__mod__', (prec, 1. / 7))
         # Issue 15989
-        if 1 << (_testcapi.PY_SSIZE_T_MAX.bit_length() + 1) <= sys.maxint:
-            self.checkraises(OverflowError, '%*s', '__mod__',
-                            (1 << (_testcapi.PY_SSIZE_T_MAX.bit_length() + 1), ''))
-        if _testcapi.UINT_MAX < sys.maxint:
-            self.checkraises(OverflowError, '%.*f', '__mod__',
-                            (_testcapi.UINT_MAX + 1, 1. / 7))
+        width = int(1 << (_testcapi.PY_SSIZE_T_MAX.bit_length() + 1))
+        if width <= sys.maxint:
+            self.checkraises(OverflowError, '%*s', '__mod__', (width, ''))
+        prec = int(_testcapi.UINT_MAX + 1)
+        if prec <= sys.maxint:
+            self.checkraises(OverflowError, '%.*f', '__mod__', (prec, 1. / 7))
 
         class X(object): pass
         self.checkraises(TypeError, 'abc', '__mod__', X())