]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Issue #8825: additional testcases for int(string, 0) and long(string, 0).
authorMark Dickinson <dickinsm@gmail.com>
Wed, 26 May 2010 19:06:33 +0000 (19:06 +0000)
committerMark Dickinson <dickinsm@gmail.com>
Wed, 26 May 2010 19:06:33 +0000 (19:06 +0000)
Lib/test/test_int.py
Lib/test/test_long.py

index ec57842b68807512063f277f4fda7aa0bc3db41e..6e611c2cc9313686e925e87057e0ab0dcdd6f9ab 100644 (file)
@@ -175,6 +175,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 7be89fcf1609d086f3df54fd4ffbbe571fca82b0..412ec7c52517c96b5dfdb183d30c7f464be261dc 100644 (file)
@@ -356,6 +356,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)