diff options
author | Martin v. Löwis <martin@v.loewis.de> | 2006-07-03 12:19:50 (GMT) |
---|---|---|
committer | Martin v. Löwis <martin@v.loewis.de> | 2006-07-03 12:19:50 (GMT) |
commit | fcfff0a7fa6ece4c806b6e1a0a66b5ce214b9a28 (patch) | |
tree | f7021d6ee71d28238772991a0f367cf632216485 /Lib/test/test_builtin.py | |
parent | 82c276ea332108056e2ca8905547fc184bfe0eb9 (diff) | |
download | cpython-fcfff0a7fa6ece4c806b6e1a0a66b5ce214b9a28.zip cpython-fcfff0a7fa6ece4c806b6e1a0a66b5ce214b9a28.tar.gz cpython-fcfff0a7fa6ece4c806b6e1a0a66b5ce214b9a28.tar.bz2 |
Bug #1417699: Reject locale-specific decimal point in float()
and atof().
Diffstat (limited to 'Lib/test/test_builtin.py')
-rw-r--r-- | Lib/test/test_builtin.py | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py index dcc565a..bcb4424 100644 --- a/Lib/test/test_builtin.py +++ b/Lib/test/test_builtin.py @@ -558,13 +558,24 @@ class BuiltinTest(unittest.TestCase): @run_with_locale('LC_NUMERIC', 'fr_FR', 'de_DE') def test_float_with_comma(self): # set locale to something that doesn't use '.' for the decimal point + # float must not accept the locale specific decimal point but + # it still has to accept the normal python syntac import locale if not locale.localeconv()['decimal_point'] == ',': return - self.assertEqual(float(" 3,14 "), 3.14) - self.assertEqual(float(" +3,14 "), 3.14) - self.assertEqual(float(" -3,14 "), -3.14) + self.assertEqual(float(" 3.14 "), 3.14) + self.assertEqual(float("+3.14 "), 3.14) + self.assertEqual(float("-3.14 "), -3.14) + self.assertEqual(float(".14 "), .14) + self.assertEqual(float("3. "), 3.0) + self.assertEqual(float("3.e3 "), 3000.0) + self.assertEqual(float("3.2e3 "), 3200.0) + self.assertEqual(float("2.5e-1 "), 0.25) + self.assertEqual(float("5e-1"), 0.5) + self.assertRaises(ValueError, float, " 3,14 ") + self.assertRaises(ValueError, float, " +3,14 ") + self.assertRaises(ValueError, float, " -3,14 ") self.assertRaises(ValueError, float, " 0x3.1 ") self.assertRaises(ValueError, float, " -0x3.p-1 ") self.assertEqual(float(" 25.e-1 "), 2.5) |