summaryrefslogtreecommitdiffstats
path: root/Lib/test
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2017-11-13 19:23:48 (GMT)
committerGitHub <noreply@github.com>2017-11-13 19:23:48 (GMT)
commit9b6c60cbce4ac45e8ccd7934babff465e9769509 (patch)
tree973d37d42dfe1ce66303ad0cf658bb20870aa88e /Lib/test
parentce12629c84400c52734859e43b2386deb2b6da12 (diff)
downloadcpython-9b6c60cbce4ac45e8ccd7934babff465e9769509.zip
cpython-9b6c60cbce4ac45e8ccd7934babff465e9769509.tar.gz
cpython-9b6c60cbce4ac45e8ccd7934babff465e9769509.tar.bz2
bpo-31979: Simplify transforming decimals to ASCII (#4336)
in int(), float() and complex() parsers. This also speeds up parsing non-ASCII numbers by around 20%.
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/test_float.py2
-rw-r--r--Lib/test/test_unicode.py13
2 files changed, 9 insertions, 6 deletions
diff --git a/Lib/test/test_float.py b/Lib/test/test_float.py
index a16c05c..17174dd 100644
--- a/Lib/test/test_float.py
+++ b/Lib/test/test_float.py
@@ -51,7 +51,7 @@ class GeneralFloatCases(unittest.TestCase):
self.assertRaises(TypeError, float, {})
self.assertRaisesRegex(TypeError, "not 'dict'", float, {})
# Lone surrogate
- self.assertRaises(UnicodeEncodeError, float, '\uD8F0')
+ self.assertRaises(ValueError, float, '\uD8F0')
# check that we don't accept alternate exponent markers
self.assertRaises(ValueError, float, "-1.7d29")
self.assertRaises(ValueError, float, "3D-14")
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py
index 341007b..2b77863 100644
--- a/Lib/test/test_unicode.py
+++ b/Lib/test/test_unicode.py
@@ -2068,11 +2068,14 @@ class UnicodeTest(string_tests.CommonTest,
# Error handling (wrong arguments)
self.assertRaises(TypeError, "hello".encode, 42, 42, 42)
- # Error handling (lone surrogate in PyUnicode_TransformDecimalToASCII())
- self.assertRaises(UnicodeError, float, "\ud800")
- self.assertRaises(UnicodeError, float, "\udf00")
- self.assertRaises(UnicodeError, complex, "\ud800")
- self.assertRaises(UnicodeError, complex, "\udf00")
+ # Error handling (lone surrogate in
+ # _PyUnicode_TransformDecimalAndSpaceToASCII())
+ self.assertRaises(ValueError, int, "\ud800")
+ self.assertRaises(ValueError, int, "\udf00")
+ self.assertRaises(ValueError, float, "\ud800")
+ self.assertRaises(ValueError, float, "\udf00")
+ self.assertRaises(ValueError, complex, "\ud800")
+ self.assertRaises(ValueError, complex, "\udf00")
def test_codecs(self):
# Encoding