mirror of
https://github.com/python/cpython.git
synced 2025-11-01 10:45:30 +00:00
gh-126992: Change pickle code to base 10 for load_long and load_int (GH-127042)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
This commit is contained in:
parent
d5d84c3f13
commit
ce76b547f9
5 changed files with 64 additions and 9 deletions
|
|
@ -1012,6 +1012,26 @@ class AbstractUnpickleTests:
|
|||
self.assertIs(self.loads(b'I01\n.'), True)
|
||||
self.assertIs(self.loads(b'I00\n.'), False)
|
||||
|
||||
def test_zero_padded_integers(self):
|
||||
self.assertEqual(self.loads(b'I010\n.'), 10)
|
||||
self.assertEqual(self.loads(b'I-010\n.'), -10)
|
||||
self.assertEqual(self.loads(b'I0010\n.'), 10)
|
||||
self.assertEqual(self.loads(b'I-0010\n.'), -10)
|
||||
self.assertEqual(self.loads(b'L010\n.'), 10)
|
||||
self.assertEqual(self.loads(b'L-010\n.'), -10)
|
||||
self.assertEqual(self.loads(b'L0010\n.'), 10)
|
||||
self.assertEqual(self.loads(b'L-0010\n.'), -10)
|
||||
self.assertEqual(self.loads(b'L010L\n.'), 10)
|
||||
self.assertEqual(self.loads(b'L-010L\n.'), -10)
|
||||
|
||||
def test_nondecimal_integers(self):
|
||||
self.assertRaises(ValueError, self.loads, b'I0b10\n.')
|
||||
self.assertRaises(ValueError, self.loads, b'I0o10\n.')
|
||||
self.assertRaises(ValueError, self.loads, b'I0x10\n.')
|
||||
self.assertRaises(ValueError, self.loads, b'L0b10L\n.')
|
||||
self.assertRaises(ValueError, self.loads, b'L0o10L\n.')
|
||||
self.assertRaises(ValueError, self.loads, b'L0x10L\n.')
|
||||
|
||||
def test_empty_bytestring(self):
|
||||
# issue 11286
|
||||
empty = self.loads(b'\x80\x03U\x00q\x00.', encoding='koi8-r')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue