mirror of
https://github.com/RustPython/RustPython.git
synced 2026-10-28 10:44:36 +08:00
Need upgrade the version of pickle.py
This commit is contained in:
1 parent
d1f2179397
commit
3c92199aa3
1 file changed
+3
-4
@@ -725,10 +725,9 @@ assert a.__ne__(b) is True
|
||||
# pickle
|
||||
a = bytearray(b'\xffab\x80\0\0\370\0\0')
|
||||
# TODO: Different output when pickle dumping a str if protocol is 0
|
||||
# CPython's output is like:
|
||||
# b'c__builtin__\nbytearray\np0\n(c_codecs\nencode\np1\n(V\xffab\x80\\u0000\\u0000\xf8\\u0000\\u0000\np2\nVlatin1\np3\ntp4\nRp5\ntp6\nRp7\n.'
|
||||
# We do have fully Interoperability between our output and CPython's
|
||||
assert pickle.dumps(a, 0) == b'c__builtin__\nbytearray\np0\n(c_codecs\nencode\np1\n(V\xffab\x80\x00\x00\xf8\x00\x00\np2\nVlatin1\np3\ntp4\nRp5\ntp6\nRp7\n.'
|
||||
# this is because the different version of python lib pickle.py
|
||||
# we have to upgrade the pickle.py lib to get the same result
|
||||
# assert pickle.dumps(a, 0) == b'c__builtin__\nbytearray\np0\n(c_codecs\nencode\np1\n(V\xffab\x80\\u0000\\u0000\xf8\\u0000\\u0000\np2\nVlatin1\np3\ntp4\nRp5\ntp6\nRp7\n.'
|
||||
assert pickle.dumps(a, 1) == b'c__builtin__\nbytearray\nq\x00(c_codecs\nencode\nq\x01(X\x0c\x00\x00\x00\xc3\xbfab\xc2\x80\x00\x00\xc3\xb8\x00\x00q\x02X\x06\x00\x00\x00latin1q\x03tq\x04Rq\x05tq\x06Rq\x07.'
|
||||
assert pickle.dumps(a, 2) == b'\x80\x02c__builtin__\nbytearray\nq\x00c_codecs\nencode\nq\x01X\x0c\x00\x00\x00\xc3\xbfab\xc2\x80\x00\x00\xc3\xb8\x00\x00q\x02X\x06\x00\x00\x00latin1q\x03\x86q\x04Rq\x05\x85q\x06Rq\x07.'
|
||||
assert pickle.dumps(a, 3) == b'\x80\x03cbuiltins\nbytearray\nq\x00C\t\xffab\x80\x00\x00\xf8\x00\x00q\x01\x85q\x02Rq\x03.'
|
||||
|
||||
Reference in new issue
Block a user