def func1(self) -> None: _ = debugtrace.enter() debugtrace.print('value', 1) self.assertTrue( debugtrace.last_print_string().startswith("||value <= 1 "), msg=debugtrace.last_print_string()) self.func2()
def test_data_indent_string(self) -> None: debugtrace.main._maximum_data_output_width = 30 debugtrace.LogBuffer.maximum_data_output_width = 30 debugtrace.print('value', [1111, 2222, 3333, 4444, 5555]) self.assertTrue(debugtrace.last_print_string().startswith( "value <= (_count_:5)[\n``1111, 2222, 3333, 4444, 5555\n] "), msg=debugtrace.last_print_string())
def test_no__str__repr__(self) -> None: _ = debugtrace.enter() person = Person1('First', 'Last') debugtrace.print('person', person) self.assertTrue( "first_name: 'First'" in debugtrace.last_print_string()) self.assertTrue("last_name: 'Last'" in debugtrace.last_print_string()) self.assertTrue( "full_name: 'First Last'" in debugtrace.last_print_string())
def test_output_private(self) -> None: point = Point(1, 2) debugtrace.print('point', point, force_reflection=True, output_private=True) self.assertTrue(debugtrace.last_print_string().find( 'point = (__main__.Point){_x: 1, _y: 2, x: 1, y: 2}') >= 0, msg=debugtrace.last_print_string())
def test_output_method(self) -> None: point = Point(1, 2) debugtrace.print('point', point, force_reflection=True, output_method=True) self.assertTrue(debugtrace.last_print_string().find( 'point = (__main__.Point){transpose: (method){}, x: 1, y: 2}') >= 0, msg=debugtrace.last_print_string())
def test_cyclic_reference_string(self) -> None: # cyclic_reference_string node = Node() node.next = node debugtrace.print('node1', node) self.assertTrue(debugtrace.last_print_string().startswith( "node1 <= (__main__.Node){next:: <CyclicReference>} "), msg=debugtrace.last_print_string()) node = Node(Node()) debugtrace.print('node2', node) self.assertTrue(debugtrace.last_print_string().startswith( "node2 <= (__main__.Node){next:: (__main__.Node){next:: None}} "), msg=debugtrace.last_print_string()) # reflection_nest_limit node = Node(Node(Node())) debugtrace.print('node3', node) self.assertTrue(debugtrace.last_print_string().startswith( "node3 <= (__main__.Node){next:: (__main__.Node){next:: (__main__.Node){next:: None}}} " ), msg=debugtrace.last_print_string()) node = Node(Node(Node(Node()))) debugtrace.print('node4', node) self.assertTrue(debugtrace.last_print_string().startswith( "node4 <= (__main__.Node){next:: (__main__.Node){next:: (__main__.Node){next:: <Limit>}}} " ), msg=debugtrace.last_print_string())
def test_enter_leave(self) -> None: self.func() self.assertRegex( debugtrace.last_print_string(), '_Leave_ func \\(ini_file_test.py:[0-9]+\\) duration: 0:00:00\\.[0-9]+' ) self.func1()
def test_line_break_of_iterable(self) -> None: contacts = [ Contact('Akane' , 'Apple' , date(2020, 1, 1), '080-1111-1111'), Contact('Yukari', 'Apple' , date(2020, 2, 2), '080-2222-2222'), None, None ] _ = debugtrace.enter() debugtrace.print('contacts', contacts) self.assertTrue('[\n (__main__.Contact){' in debugtrace.last_print_string()) self.assertTrue(' birthday:' in debugtrace.last_print_string()) self.assertTrue(', first_name: ' in debugtrace.last_print_string()) self.assertTrue(' last_name:' in debugtrace.last_print_string()) self.assertTrue(' phone_number:' in debugtrace.last_print_string()) self.assertTrue('},\n (__main__.Contact){' in debugtrace.last_print_string()) self.assertTrue('},\n None, None' in debugtrace.last_print_string())
def test_line_break_of_refrection(self) -> None: contacts = Contacts( Contact('Akane' , 'Apple' , date(2020, 1, 1), '080-1111-1111'), Contact('Yukari', 'Apple' , date(2020, 2, 2), '080-2222-2222'), None, None ) _ = debugtrace.enter() debugtrace.print('contacts', contacts) self.assertTrue('{\n contact1: (__main__.Contact){' in debugtrace.last_print_string()) self.assertTrue(' birthday:' in debugtrace.last_print_string()) self.assertTrue(', first_name: ' in debugtrace.last_print_string()) self.assertTrue(' last_name:' in debugtrace.last_print_string()) self.assertTrue(' phone_number:' in debugtrace.last_print_string()) self.assertTrue('},\n contact2: (__main__.Contact){' in debugtrace.last_print_string()) self.assertTrue('},\n contact3: None, contact4: None' in debugtrace.last_print_string())
def test_force_reflection(self) -> None: point = Point(1, 2) debugtrace.print('point', point) self.assertTrue( debugtrace.last_print_string().find('point = str(): (1, 2)') >= 0, msg=debugtrace.last_print_string()) debugtrace.print('point', point, force_reflection=True) self.assertTrue(debugtrace.last_print_string().find( 'point = (__main__.Point){x: 1, y: 2}') >= 0, msg=debugtrace.last_print_string()) point3 = Point3(1, 2, 3) debugtrace.print('point3', point3) self.assertTrue( debugtrace.last_print_string().find('point3 = repr(): (1, 2, 3)') >= 0, msg=debugtrace.last_print_string()) debugtrace.print('point3', point3, force_reflection=True) self.assertTrue(debugtrace.last_print_string().find( 'point3 = (__main__.Point3){x: 1, y: 2, z: 3}') >= 0, msg=debugtrace.last_print_string())
def test_print(self, value: object, expected: str) -> None: debugtrace.print('value', value) self.assertTrue(debugtrace.last_print_string().startswith( 'value = ' + expected + ' (simple_print_test.py:'), msg=debugtrace.last_print_string())
def test_no_line_break_object_name_value(self) -> None: _ = debugtrace.enter() foo = Contact('000000000011111111112222222222333333333344444444445555555555', '', date(2021, 1, 1), '') debugtrace.print('foo', foo) self.assertTrue(" first_name: (length:60)'0000000000" in debugtrace.last_print_string())
def test_indent_string(self) -> None: _ = debugtrace.enter() debugtrace.print('foo') self.assertRegex(debugtrace.last_print_string(), '||foo \\(ini_file_test.py::[0-9]+\\)')
def test_no_line_break_key_value(self) -> None: _ = debugtrace.enter() foo = {1: '000000000011111111112222222222333333333344444444445555555555'} debugtrace.print('foo', foo) self.assertTrue(" 1: (length:60)'0000000000" in debugtrace.last_print_string())
def test_collection_limit(self, limit: int, expected: str) -> None: values = [1, 2, 3, 4, 5] debugtrace.print('values', values, collection_limit=limit) self.assertTrue(debugtrace.last_print_string().find(expected) >= 0, msg=debugtrace.last_print_string())
def func(self) -> None: _ = debugtrace.enter() self.assertRegex(debugtrace.last_print_string(), '_Enter_ func \\(ini_file_test.py:[0-9]+\\)')
def test_string_limit(self, limit: int, expected: str) -> None: string = "ABCDE" debugtrace.print('string', string, string_limit=limit) self.assertTrue(debugtrace.last_print_string().find(expected) >= 0, msg=debugtrace.last_print_string())
def test__str__repr__(self) -> None: _ = debugtrace.enter() person = Person4('First', 'Last') debugtrace.print('person', person) self.assertTrue( "person = repr(): First Last" in debugtrace.last_print_string())
def test_bytes_limit(self, limit: int, expected: str) -> None: bytes_ = b'\x41\x42\x43\x44\x45' debugtrace.print('bytes_', bytes_, bytes_limit=limit) self.assertTrue(debugtrace.last_print_string().find(expected) >= 0, msg=debugtrace.last_print_string())
def test_reflection_nest_limit(self, limit: int, expected: str) -> None: n = N(N(N(N(N(N()))))) debugtrace.print('n', n, reflection_nest_limit=limit) self.assertTrue(debugtrace.last_print_string().find(expected) >= 0, msg=debugtrace.last_print_string())