MCPcopy Index your code
hub / github.com/RustPython/RustPython / test_caret

Method test_caret

Lib/test/test_traceback.py:91–126  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

89 compile("blech ( ", "?", "exec")
90
91 def test_caret(self):
92 err = self.get_exception_format(self.syntax_error_with_caret,
93 SyntaxError)
94 self.assertEqual(len(err), 4)
95 self.assertEqual(err[1].strip(), "return x!")
96 self.assertIn("^", err[2]) # third line has caret
97 self.assertEqual(err[1].find("!"), err[2].find("^")) # in the right place
98 self.assertEqual(err[2].count("^"), 1)
99
100 err = self.get_exception_format(self.syntax_error_with_caret_2,
101 SyntaxError)
102 self.assertIn("^", err[2]) # third line has caret
103 self.assertEqual(err[2].count('\n'), 1) # and no additional newline
104 self.assertEqual(err[1].find("+") + 1, err[2].find("^")) # in the right place
105 self.assertEqual(err[2].count("^"), 1)
106
107 err = self.get_exception_format(self.syntax_error_with_caret_non_ascii,
108 SyntaxError)
109 self.assertIn("^", err[2]) # third line has caret
110 self.assertEqual(err[2].count('\n'), 1) # and no additional newline
111 self.assertEqual(err[1].find("+") + 1, err[2].find("^")) # in the right place
112 self.assertEqual(err[2].count("^"), 1)
113
114 err = self.get_exception_format(self.syntax_error_with_caret_range,
115 SyntaxError)
116 self.assertIn("^", err[2]) # third line has caret
117 self.assertEqual(err[2].count('\n'), 1) # and no additional newline
118 self.assertEqual(err[1].find("y"), err[2].find("^")) # in the right place
119 self.assertEqual(err[2].count("^"), len("y for y in range(30)"))
120
121 err = self.get_exception_format(self.tokenizer_error_with_caret_range,
122 SyntaxError)
123 self.assertIn("^", err[2]) # third line has caret
124 self.assertEqual(err[2].count('\n'), 1) # and no additional newline
125 self.assertEqual(err[1].find("("), err[2].find("^")) # in the right place
126 self.assertEqual(err[2].count("^"), 1)
127
128 def test_nocaret(self):
129 exc = SyntaxError("error", ("x.py", 23, None, "bad syntax"))

Callers

nothing calls this directly

Calls 7

get_exception_formatMethod · 0.95
lenFunction · 0.85
assertInMethod · 0.80
assertEqualMethod · 0.45
stripMethod · 0.45
findMethod · 0.45
countMethod · 0.45

Tested by

no test coverage detected