Skip to content

Commit 28e6e5a

Browse files
test: new traceback test cases
1 parent de43049 commit 28e6e5a

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

Lib/test/test_traceback.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3803,7 +3803,7 @@ def test_traceback_header(self):
38033803
self.assertEqual(list(exc.format()), ["Exception: haven\n"])
38043804

38053805
def test_name_error_punctuation_with_suggestions(self):
3806-
def raise_mssage(message, name):
3806+
def raise_mssage(message, name, name_from=None):
38073807
try:
38083808
raise NameError(message, name=name)
38093809
except NameError as e:
@@ -3822,6 +3822,19 @@ def raise_mssage(message, name):
38223822
messsage = raise_mssage(message, name)
38233823
self.assertEqual(messsage, expected)
38243824

3825+
with self.subTest("combined suggestion"):
3826+
messsage = raise_mssage("foo", "abc")
3827+
expected_message = (
3828+
"NameError: foo. Did you mean: 'abs'? "
3829+
"Or did you forget to import 'abc'?\n"
3830+
)
3831+
self.assertEqual(messsage, expected_message)
3832+
3833+
with self.subTest("'did you mean' suggestion"):
3834+
messsage = raise_mssage("bar", "flaot")
3835+
expected_message = "NameError: bar. Did you mean: 'float'?\n"
3836+
self.assertEqual(messsage, expected_message)
3837+
38253838
def test_import_error_punctuation_handling_with_suggestions(self):
38263839
def raise_mssage(message):
38273840
try:

0 commit comments

Comments
 (0)