MCPcopy Index your code
hub / github.com/python/cpython / _test_truncated_data

Method _test_truncated_data

Lib/test/pickletester.py:1108–1131  ·  view source on GitHub ↗
(self, dumped, expected_error=None)

Source from the content-addressed store, hash-verified

1106 self.assertEqual(self.loads(data(idx)), ([],)*2)
1107
1108 def _test_truncated_data(self, dumped, expected_error=None):
1109 # Test that instructions to read large data without providing
1110 # such amount of data do not cause large memory usage.
1111 if expected_error is None:
1112 expected_error = self.truncated_data_error
1113 # BytesIO
1114 with self.assertRaisesRegex(*expected_error):
1115 self.loads(dumped)
1116 if hasattr(self, 'unpickler'):
1117 try:
1118 with open(TESTFN, 'wb') as f:
1119 f.write(dumped)
1120 # buffered file
1121 with open(TESTFN, 'rb') as f:
1122 u = self.unpickler(f)
1123 with self.assertRaisesRegex(*expected_error):
1124 u.load()
1125 # unbuffered file
1126 with open(TESTFN, 'rb', buffering=0) as f:
1127 u = self.unpickler(f)
1128 with self.assertRaisesRegex(*expected_error):
1129 u.load()
1130 finally:
1131 os_helper.unlink(TESTFN)
1132
1133 def test_truncated_large_binstring(self):
1134 data = lambda size: b'T' + struct.pack('<I', size) + b'.' * 5

Calls 6

loadsMethod · 0.95
assertRaisesRegexMethod · 0.80
openFunction · 0.50
writeMethod · 0.45
loadMethod · 0.45
unlinkMethod · 0.45

Tested by

no test coverage detected