Skip to content

Commit 983d570

Browse files
committed
Move test
1 parent 3c652de commit 983d570

File tree

2 files changed

+24
-26
lines changed

2 files changed

+24
-26
lines changed

ipykernel/tests/test_kernel.py

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -391,29 +391,3 @@ def test_interrupt_during_pdb_set_trace():
391391
validate_message(reply, 'execute_reply', msg_id)
392392
reply = kc.get_shell_msg(timeout=TIMEOUT)
393393
validate_message(reply, 'execute_reply', msg_id2)
394-
395-
def test_abort_execute_requests():
396-
"""test that execute_request's are aborted after an error"""
397-
with kernel() as kc:
398-
msg_id1 = kc.execute(code="assert False")
399-
msg_id2 = kc.execute(code="assert True")
400-
reply1 = kc.get_shell_msg(timeout=TIMEOUT)
401-
reply2 = kc.get_shell_msg(timeout=TIMEOUT)
402-
assert reply1['content']['status'] == 'error'
403-
assert reply2['content']['status'] == 'aborted'
404-
405-
def test_dont_abort_non_execute_requests():
406-
"""test that kernel_info, comm_info and inspect requests are not aborted after an error"""
407-
with kernel() as kc:
408-
msg_id1 = kc.execute(code="assert False")
409-
msg_id2 = kc.kernel_info()
410-
msg_id3 = kc.comm_info()
411-
msg_id4 = kc.inspect(code="pri")
412-
reply1 = kc.get_shell_msg(timeout=TIMEOUT) # execute
413-
reply2 = kc.get_shell_msg(timeout=TIMEOUT) # kernel_info
414-
reply3 = kc.get_shell_msg(timeout=TIMEOUT) # comm_info
415-
reply4 = kc.get_shell_msg(timeout=TIMEOUT) # inspect
416-
assert reply1['content']['status'] == 'error'
417-
assert reply2['content']['status'] == 'ok'
418-
assert reply3['content']['status'] == 'ok'
419-
assert reply4['content']['status'] == 'ok'

ipykernel/tests/test_message_spec.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -355,6 +355,30 @@ def test_execute_stop_on_error():
355355
assert reply['content']['status'] == 'ok'
356356

357357

358+
def test_non_execute_stop_on_error():
359+
"""test that non-execute_request's are not aborted after an error"""
360+
flush_channels()
361+
362+
fail = '\n'.join([
363+
# sleep to ensure subsequent message is waiting in the queue to be aborted
364+
'import time',
365+
'time.sleep(0.5)',
366+
'raise ValueError',
367+
])
368+
KC.execute(code=fail)
369+
KC.kernel_info()
370+
KC.comm_info()
371+
KC.inspect(code="print")
372+
reply = KC.get_shell_msg(timeout=TIMEOUT) # execute
373+
assert reply['content']['status'] == 'error'
374+
reply = KC.get_shell_msg(timeout=TIMEOUT) # kernel_info
375+
assert reply['content']['status'] == 'ok'
376+
reply = KC.get_shell_msg(timeout=TIMEOUT) # comm_info
377+
assert reply['content']['status'] == 'ok'
378+
reply = KC.get_shell_msg(timeout=TIMEOUT) # inspect
379+
assert reply['content']['status'] == 'ok'
380+
381+
358382
def test_user_expressions():
359383
flush_channels()
360384

0 commit comments

Comments
 (0)