X Tutup
Skip to content

Commit bf8833d

Browse files
committed
Even more tests.
1 parent ddfd169 commit bf8833d

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

bpython/test/test_repl.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,20 @@ def setInputLine(self, line):
151151
"""Set current input line of the test REPL."""
152152
self.repl.input_line = line
153153

154+
def test_func_name(self):
155+
for (line, expected_name) in [("spam(", "spam"),
156+
("spam(map([]", "map"),
157+
("spam((), ", "spam")]:
158+
self.setInputLine(line)
159+
self.assertTrue(self.repl.get_args())
160+
self.assertEqual(self.repl.current_func.__name__, expected_name)
161+
162+
def test_syntax_error_parens(self):
163+
for line in ["spam(]", "spam([)", "spam())"]:
164+
self.setInputLine(line)
165+
# Should not explode
166+
self.repl.get_args()
167+
154168
def test_kw_arg_position(self):
155169
self.setInputLine("spam(a=0")
156170
self.assertTrue(self.repl.get_args())
@@ -171,6 +185,16 @@ def test_lambda_position(self):
171185
# Argument position
172186
self.assertEqual(self.repl.argspec[3], 1)
173187

188+
def test_name_in_assignment_without_spaces(self):
189+
# Issue #127
190+
self.setInputLine("x=range(")
191+
self.assertTrue(self.repl.get_args())
192+
self.assertEqual(self.repl.current_func.__name__, "range")
193+
194+
def test_nonexistent_name(self):
195+
self.setInputLine("spamspamspam(")
196+
self.assertFalse(self.repl.get_args())
197+
174198

175199
if __name__ == '__main__':
176200
unittest.main()

0 commit comments

Comments
 (0)
X Tutup