Issue #25761: Added more test cases for testing unpickling broken data.
Output raised exception at verbose level 2 (-vv).
diff --git a/Lib/test/test_pickle.py b/Lib/test/test_pickle.py
index cbcf491..bb43656 100644
--- a/Lib/test/test_pickle.py
+++ b/Lib/test/test_pickle.py
@@ -1,4 +1,5 @@
import pickle
+import struct
from cStringIO import StringIO
from test import test_support
@@ -24,11 +25,23 @@
module = pickle
error = KeyError
bad_stack_errors = (IndexError,)
+ bad_mark_errors = (IndexError, pickle.UnpicklingError,
+ TypeError, AttributeError, EOFError)
+ truncated_errors = (pickle.UnpicklingError, EOFError,
+ AttributeError, ValueError,
+ struct.error, IndexError, ImportError,
+ TypeError, KeyError)
class UnpicklerTests(AbstractUnpickleTests):
error = KeyError
bad_stack_errors = (IndexError,)
+ bad_mark_errors = (IndexError, pickle.UnpicklingError,
+ TypeError, AttributeError, EOFError)
+ truncated_errors = (pickle.UnpicklingError, EOFError,
+ AttributeError, ValueError,
+ struct.error, IndexError, ImportError,
+ TypeError, KeyError)
def loads(self, buf):
f = StringIO(buf)