MCPcopy Index your code
hub / github.com/RustPython/RustPython / test_compat_unpickle

Method test_compat_unpickle

Lib/test/datetimetester.py:4967–5002  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

4965 self.assertEqual(orig.__reduce__(), orig.__reduce_ex__(2))
4966
4967 def test_compat_unpickle(self):
4968 tests = [
4969 b'cdatetime\ndatetime\n'
4970 b"(S'\\x07\\xdf\\x0b\\x1b\\x14;\\x01\\x01\\xe2@'\n"
4971 b'ctest.datetimetester\nPicklableFixedOffset\n(tR'
4972 b"(dS'_FixedOffset__offset'\ncdatetime\ntimedelta\n"
4973 b'(I-1\nI68400\nI0\ntRs'
4974 b"S'_FixedOffset__dstoffset'\nNs"
4975 b"S'_FixedOffset__name'\nS'cookie'\nsbtR.",
4976
4977 b'cdatetime\ndatetime\n'
4978 b'(U\n\x07\xdf\x0b\x1b\x14;\x01\x01\xe2@'
4979 b'ctest.datetimetester\nPicklableFixedOffset\n)R'
4980 b'}(U\x14_FixedOffset__offsetcdatetime\ntimedelta\n'
4981 b'(J\xff\xff\xff\xffJ0\x0b\x01\x00K\x00tR'
4982 b'U\x17_FixedOffset__dstoffsetN'
4983 b'U\x12_FixedOffset__nameU\x06cookieubtR.',
4984
4985 b'\x80\x02cdatetime\ndatetime\n'
4986 b'U\n\x07\xdf\x0b\x1b\x14;\x01\x01\xe2@'
4987 b'ctest.datetimetester\nPicklableFixedOffset\n)R'
4988 b'}(U\x14_FixedOffset__offsetcdatetime\ntimedelta\n'
4989 b'J\xff\xff\xff\xffJ0\x0b\x01\x00K\x00\x87R'
4990 b'U\x17_FixedOffset__dstoffsetN'
4991 b'U\x12_FixedOffset__nameU\x06cookieub\x86R.',
4992 ]
4993 args = 2015, 11, 27, 20, 59, 1, 123456
4994 tinfo = PicklableFixedOffset(-300, 'cookie')
4995 expected = self.theclass(*args, **{'tzinfo': tinfo})
4996 for data in tests:
4997 for loads in pickle_loads:
4998 derived = loads(data, encoding='latin1')
4999 self.assertEqual(derived, expected)
5000 self.assertIsInstance(derived.tzinfo, PicklableFixedOffset)
5001 self.assertEqual(derived.utcoffset(), timedelta(minutes=-300))
5002 self.assertEqual(derived.tzname(), 'cookie')
5003
5004 def test_extreme_hashes(self):
5005 # If an attempt is made to hash these via subtracting the offset

Callers

nothing calls this directly

Calls 7

timedeltaClass · 0.90
assertIsInstanceMethod · 0.80
loadsFunction · 0.50
assertEqualMethod · 0.45
utcoffsetMethod · 0.45
tznameMethod · 0.45

Tested by

no test coverage detected