summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2012-03-03 01:35:32 (GMT)
committerAntoine Pitrou <solipsis@pitrou.net>2012-03-03 01:35:32 (GMT)
commit4a90ef03637fdc1bc63ee9be82fbf22cbaa68662 (patch)
treef6424020b09897e21e82740669a5ea1d2583e9da /Lib
parent679e9d36f78de3ac18abaaddbcf4f73fcef55b7e (diff)
downloadcpython-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.py2
-rw-r--r--Lib/test/test_marshal.py7
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,