diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2012-03-03 01:35:32 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2012-03-03 01:35:32 (GMT) |
commit | 4a90ef03637fdc1bc63ee9be82fbf22cbaa68662 (patch) | |
tree | f6424020b09897e21e82740669a5ea1d2583e9da /Lib | |
parent | 679e9d36f78de3ac18abaaddbcf4f73fcef55b7e (diff) | |
download | cpython-4a90ef03637fdc1bc63ee9be82fbf22cbaa68662.zip cpython-4a90ef03637fdc1bc63ee9be82fbf22cbaa68662.tar.gz cpython-4a90ef03637fdc1bc63ee9be82fbf22cbaa68662.tar.bz2 |
Issue #14177: marshal.loads() now raises TypeError when given an unicode string.
Patch by Guilherme Gonçalves.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_exceptions.py | 2 | ||||
-rw-r--r-- | Lib/test/test_marshal.py | 7 |
2 files changed, 7 insertions, 2 deletions
diff --git a/Lib/test/test_exceptions.py b/Lib/test/test_exceptions.py index 0a7ddd4..7a2dd0c 100644 --- a/Lib/test/test_exceptions.py +++ b/Lib/test/test_exceptions.py @@ -38,7 +38,7 @@ class ExceptionTests(unittest.TestCase): try: try: import marshal - marshal.loads('') + marshal.loads(b'') except EOFError: pass finally: diff --git a/Lib/test/test_marshal.py b/Lib/test/test_marshal.py index 9a25012..96a70ec 100644 --- a/Lib/test/test_marshal.py +++ b/Lib/test/test_marshal.py @@ -184,7 +184,7 @@ class BugsTestCase(unittest.TestCase): pass def test_loads_recursion(self): - s = 'c' + ('X' * 4*4) + '{' * 2**20 + s = b'c' + (b'X' * 4*4) + b'{' * 2**20 self.assertRaises(ValueError, marshal.loads, s) def test_recursion_limit(self): @@ -257,6 +257,11 @@ class BugsTestCase(unittest.TestCase): finally: support.unlink(support.TESTFN) + def test_loads_reject_unicode_strings(self): + # Issue #14177: marshal.loads() should not accept unicode strings + unicode_string = 'T' + self.assertRaises(TypeError, marshal.loads, unicode_string) + def test_main(): support.run_unittest(IntTestCase, |