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

Method test_field_order

Lib/test/test_dataclasses/__init__.py:688–722  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

686 self.assertFalse(the_fields[2].repr)
687
688 def test_field_order(self):
689 @dataclass
690 class B:
691 a: str = 'B:a'
692 b: str = 'B:b'
693 c: str = 'B:c'
694
695 @dataclass
696 class C(B):
697 b: str = 'C:b'
698
699 self.assertEqual([(f.name, f.default) for f in fields(C)],
700 [('a', 'B:a'),
701 ('b', 'C:b'),
702 ('c', 'B:c')])
703
704 @dataclass
705 class D(B):
706 c: str = 'D:c'
707
708 self.assertEqual([(f.name, f.default) for f in fields(D)],
709 [('a', 'B:a'),
710 ('b', 'B:b'),
711 ('c', 'D:c')])
712
713 @dataclass
714 class E(D):
715 a: str = 'E:a'
716 d: str = 'E:d'
717
718 self.assertEqual([(f.name, f.default) for f in fields(E)],
719 [('a', 'E:a'),
720 ('b', 'B:b'),
721 ('c', 'D:c'),
722 ('d', 'E:d')])
723
724 def test_class_attrs(self):
725 # We only have a class attribute if a default value is

Callers

nothing calls this directly

Calls 2

assertEqualMethod · 0.95
fieldsFunction · 0.85

Tested by

no test coverage detected