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

Method test_mixed_compare

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

Source from the content-addressed store, hash-verified

5696 self.assertEqual(got, expected)
5697
5698 def test_mixed_compare(self):
5699 t1 = datetime(1, 2, 3, 4, 5, 6, 7)
5700 t2 = datetime(1, 2, 3, 4, 5, 6, 7)
5701 self.assertEqual(t1, t2)
5702 t2 = t2.replace(tzinfo=None)
5703 self.assertEqual(t1, t2)
5704 t2 = t2.replace(tzinfo=FixedOffset(None, ""))
5705 self.assertEqual(t1, t2)
5706 t2 = t2.replace(tzinfo=FixedOffset(0, ""))
5707 self.assertNotEqual(t1, t2)
5708
5709 # In datetime w/ identical tzinfo objects, utcoffset is ignored.
5710 class Varies(tzinfo):
5711 def __init__(self):
5712 self.offset = timedelta(minutes=22)
5713 def utcoffset(self, t):
5714 self.offset += timedelta(minutes=1)
5715 return self.offset
5716
5717 v = Varies()
5718 t1 = t2.replace(tzinfo=v)
5719 t2 = t2.replace(tzinfo=v)
5720 self.assertEqual(t1.utcoffset(), timedelta(minutes=23))
5721 self.assertEqual(t2.utcoffset(), timedelta(minutes=24))
5722 self.assertEqual(t1, t2)
5723
5724 # But if they're not identical, it isn't ignored.
5725 t2 = t2.replace(tzinfo=Varies())
5726 self.assertTrue(t1 < t2) # t1's offset counter still going up
5727
5728 def test_subclass_datetimetz(self):
5729

Callers

nothing calls this directly

Calls 9

datetimeClass · 0.90
timedeltaClass · 0.90
FixedOffsetClass · 0.85
assertNotEqualMethod · 0.80
assertTrueMethod · 0.80
VariesClass · 0.70
assertEqualMethod · 0.45
replaceMethod · 0.45
utcoffsetMethod · 0.45

Tested by

no test coverage detected