gh-105724: Add location information to assert errors (GH-105935)

This commit is contained in:
Nikita Sobolev 2023-08-16 13:35:38 +03:00 committed by GitHub
parent fd9d70a94d
commit bdd8ddfda1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 124 additions and 6 deletions

View file

@ -1315,18 +1315,18 @@ class TestSourcePositions(unittest.TestCase):
snippet = textwrap.dedent("""\
assert (a > 0 and
bb > 0 and
ccc == 4), "error msg"
ccc == 1000000), "error msg"
""")
compiled_code, _ = self.check_positions_against_ast(snippet)
self.assertOpcodeSourcePositionIs(compiled_code, 'LOAD_ASSERTION_ERROR',
line=1, end_line=3, column=0, end_column=30, occurrence=1)
line=1, end_line=3, column=0, end_column=36, occurrence=1)
# The "error msg":
self.assertOpcodeSourcePositionIs(compiled_code, 'LOAD_CONST',
line=3, end_line=3, column=19, end_column=30, occurrence=4)
line=3, end_line=3, column=25, end_column=36, occurrence=4)
self.assertOpcodeSourcePositionIs(compiled_code, 'CALL',
line=1, end_line=3, column=0, end_column=30, occurrence=1)
line=1, end_line=3, column=0, end_column=36, occurrence=1)
self.assertOpcodeSourcePositionIs(compiled_code, 'RAISE_VARARGS',
line=1, end_line=3, column=0, end_column=30, occurrence=1)
line=1, end_line=3, column=8, end_column=22, occurrence=1)
def test_multiline_generator_expression(self):
snippet = textwrap.dedent("""\