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

Method test_compat_unpickle

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

Source from the content-addressed store, hash-verified

5152 self.assertEqual(orig.__reduce__(), orig.__reduce_ex__(2))
5153
5154 def test_compat_unpickle(self):
5155 tests = [
5156 b'cdatetime\ndatetime\n'
5157 b"(S'\\x07\\xdf\\x0b\\x1b\\x14;\\x01\\x01\\xe2@'\n"
5158 b'ctest.datetimetester\nPicklableFixedOffset\n(tR'
5159 b"(dS'_FixedOffset__offset'\ncdatetime\ntimedelta\n"
5160 b'(I-1\nI68400\nI0\ntRs'
5161 b"S'_FixedOffset__dstoffset'\nNs"
5162 b"S'_FixedOffset__name'\nS'cookie'\nsbtR.",
5163
5164 b'cdatetime\ndatetime\n'
5165 b'(U\n\x07\xdf\x0b\x1b\x14;\x01\x01\xe2@'
5166 b'ctest.datetimetester\nPicklableFixedOffset\n)R'
5167 b'}(U\x14_FixedOffset__offsetcdatetime\ntimedelta\n'
5168 b'(J\xff\xff\xff\xffJ0\x0b\x01\x00K\x00tR'
5169 b'U\x17_FixedOffset__dstoffsetN'
5170 b'U\x12_FixedOffset__nameU\x06cookieubtR.',
5171
5172 b'\x80\x02cdatetime\ndatetime\n'
5173 b'U\n\x07\xdf\x0b\x1b\x14;\x01\x01\xe2@'
5174 b'ctest.datetimetester\nPicklableFixedOffset\n)R'
5175 b'}(U\x14_FixedOffset__offsetcdatetime\ntimedelta\n'
5176 b'J\xff\xff\xff\xffJ0\x0b\x01\x00K\x00\x87R'
5177 b'U\x17_FixedOffset__dstoffsetN'
5178 b'U\x12_FixedOffset__nameU\x06cookieub\x86R.',
5179 ]
5180 args = 2015, 11, 27, 20, 59, 1, 123456
5181 tinfo = PicklableFixedOffset(-300, 'cookie')
5182 expected = self.theclass(*args, **{'tzinfo': tinfo})
5183 for data in tests:
5184 for loads in pickle_loads:
5185 derived = loads(data, encoding='latin1')
5186 self.assertEqual(derived, expected)
5187 self.assertIsInstance(derived.tzinfo, PicklableFixedOffset)
5188 self.assertEqual(derived.utcoffset(), timedelta(minutes=-300))
5189 self.assertEqual(derived.tzname(), 'cookie')
5190
5191 def test_extreme_hashes(self):
5192 # 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