]> granicus.if.org Git - python/commitdiff
Merged revisions 81551 via svnmerge from
authorMark Dickinson <dickinsm@gmail.com>
Wed, 26 May 2010 19:07:12 +0000 (19:07 +0000)
committerMark Dickinson <dickinsm@gmail.com>
Wed, 26 May 2010 19:07:12 +0000 (19:07 +0000)
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81551 | mark.dickinson | 2010-05-26 20:06:33 +0100 (Wed, 26 May 2010) | 1 line

  Issue #8825: additional testcases for int(string, 0) and long(string, 0).
........

Lib/test/test_int.py
Lib/test/test_long.py

index a2dc85f68a43b974902cdd72f6f23712a3253d1f..51fd195918fb0f197af60ccfe6f96d994552fa93 100644 (file)
@@ -174,6 +174,12 @@ class IntTestCases(unittest.TestCase):
         self.assertEqual(int(' 0O123   ', 0), 83)
         self.assertEqual(int(' 0X123  ', 0), 291)
         self.assertEqual(int(' 0B100 ', 0), 4)
+        self.assertEqual(int('0', 0), 0)
+        self.assertEqual(int('+0', 0), 0)
+        self.assertEqual(int('-0', 0), 0)
+        self.assertEqual(int('00', 0), 0)
+        self.assertRaises(ValueError, int, '08', 0)
+        self.assertRaises(ValueError, int, '-012395', 0)
 
         # without base still base 10
         self.assertEqual(int('0123'), 123)
index a91b644262e093eaa86e85e3ef07a089c9ddea55..f8afc9e80e19109d10f0e1f07c63a5890119fa46 100644 (file)
@@ -323,6 +323,23 @@ class LongTest(unittest.TestCase):
         self.assertRaises(ValueError, long, '53', 40)
         self.assertRaises(TypeError, long, 1, 12)
 
+        # tests with base 0
+        self.assertEqual(long(' 0123  ', 0), 83)
+        self.assertEqual(long(' 0123  ', 0), 83)
+        self.assertEqual(long('000', 0), 0)
+        self.assertEqual(long('0o123', 0), 83)
+        self.assertEqual(long('0x123', 0), 291)
+        self.assertEqual(long('0b100', 0), 4)
+        self.assertEqual(long(' 0O123   ', 0), 83)
+        self.assertEqual(long(' 0X123  ', 0), 291)
+        self.assertEqual(long(' 0B100 ', 0), 4)
+        self.assertEqual(long('0', 0), 0)
+        self.assertEqual(long('+0', 0), 0)
+        self.assertEqual(long('-0', 0), 0)
+        self.assertEqual(long('00', 0), 0)
+        self.assertRaises(ValueError, long, '08', 0)
+        self.assertRaises(ValueError, long, '-012395', 0)
+
         # SF patch #1638879: embedded NULs were not detected with
         # explicit base
         self.assertRaises(ValueError, long, '123\0', 10)