def test_python_add_repl(): """ Check the REPL's kernal manager is configured correctly before being handed to the Jupyter widget in the view. """ mock_qthread = mock.MagicMock() mock_kernel_runner = mock.MagicMock() editor = mock.MagicMock() editor.envars = [["name", "value"]] view = mock.MagicMock() pm = PythonMode(editor, view) pm.set_buttons = mock.MagicMock() pm.stop_kernel = mock.MagicMock() with mock.patch("mu.modes.python3.QThread", mock_qthread), mock.patch("mu.modes.python3.KernelRunner", mock_kernel_runner): pm.add_repl() mock_qthread.assert_called_once_with() mock_kernel_runner.assert_called_once_with(cwd=pm.workspace_dir(), envars=editor.envars) assert pm.kernel_thread == mock_qthread() assert pm.kernel_runner == mock_kernel_runner() pm.set_buttons.assert_called_once_with(repl=False) pm.kernel_runner.moveToThread.assert_called_once_with(pm.kernel_thread) pm.kernel_runner.kernel_started.connect.assert_called_once_with( pm.on_kernel_start) pm.kernel_runner.kernel_finished.connect.assert_called_once_with( pm.kernel_thread.quit) pm.stop_kernel.connect.assert_called_once_with( pm.kernel_runner.stop_kernel) pm.kernel_thread.started.connect.assert_called_once_with( pm.kernel_runner.start_kernel) pm.kernel_thread.finished.connect.assert_called_once_with( pm.on_kernel_stop) pm.kernel_thread.start.assert_called_once_with()
def test_python_add_repl(): """ Check the REPL's kernal manager is configured correctly before being handed to the Jupyter widget in the view. """ mock_qthread = mock.MagicMock() mock_kernel_runner = mock.MagicMock() editor = mock.MagicMock() view = mock.MagicMock() pm = PythonMode(editor, view) pm.stop_kernel = mock.MagicMock() with mock.patch('mu.modes.python3.QThread', mock_qthread), \ mock.patch('mu.modes.python3.KernelRunner', mock_kernel_runner): pm.add_repl() mock_qthread.assert_called_once_with() mock_kernel_runner.assert_called_once_with(cwd=pm.workspace_dir()) assert pm.kernel_thread == mock_qthread() assert pm.kernel_runner == mock_kernel_runner() view.button_bar.slots['repl'].setEnabled.assert_called_once_with(False) pm.kernel_runner.moveToThread.assert_called_once_with(pm.kernel_thread) pm.kernel_runner.kernel_started.connect.\ assert_called_once_with(pm.on_kernel_start) pm.kernel_runner.kernel_finished.connect.\ assert_called_once_with(pm.kernel_thread.quit) pm.stop_kernel.connect.\ assert_called_once_with(pm.kernel_runner.stop_kernel) pm.kernel_thread.started.connect.\ assert_called_once_with(pm.kernel_runner.start_kernel) pm.kernel_thread.finished.connect.\ assert_called_once_with(pm.on_kernel_stop) pm.kernel_thread.start.assert_called_once_with()
def test_python_add_repl(): """ Check the REPL's kernal manager is configured correctly before being handed to the Jupyter widget in the view. """ mock_qthread = mock.MagicMock() mock_kernel_runner = mock.MagicMock() editor = mock.MagicMock() editor.envars = [['name', 'value'], ] view = mock.MagicMock() pm = PythonMode(editor, view) pm.set_buttons = mock.MagicMock() pm.stop_kernel = mock.MagicMock() with mock.patch('mu.modes.python3.QThread', mock_qthread), \ mock.patch('mu.modes.python3.KernelRunner', mock_kernel_runner): pm.add_repl() mock_qthread.assert_called_once_with() mock_kernel_runner.assert_called_once_with(cwd=pm.workspace_dir(), envars=editor.envars) assert pm.kernel_thread == mock_qthread() assert pm.kernel_runner == mock_kernel_runner() pm.set_buttons.assert_called_once_with(repl=False) pm.kernel_runner.moveToThread.assert_called_once_with(pm.kernel_thread) pm.kernel_runner.kernel_started.connect.\ assert_called_once_with(pm.on_kernel_start) pm.kernel_runner.kernel_finished.connect.\ assert_called_once_with(pm.kernel_thread.quit) pm.stop_kernel.connect.\ assert_called_once_with(pm.kernel_runner.stop_kernel) pm.kernel_thread.started.connect.\ assert_called_once_with(pm.kernel_runner.start_kernel) pm.kernel_thread.finished.connect.\ assert_called_once_with(pm.on_kernel_stop) pm.kernel_thread.start.assert_called_once_with()
def test_python_add_repl(): """ Check the REPL's kernal manager is configured correctly before being handed to the Jupyter widget in the view. """ mock_kernel_manager = mock.MagicMock() mock_manager_class = mock.MagicMock(return_value=mock_kernel_manager) editor = mock.MagicMock() view = mock.MagicMock() pm = PythonMode(editor, view) with mock.patch('mu.modes.python3.QtInProcessKernelManager', mock_manager_class): pm.add_repl() mock_kernel_manager.start_kernel.assert_called_once_with(show_banner=False) view.add_jupyter_repl.assert_called_once_with(mock_kernel_manager) assert pm.repl == mock_kernel_manager
def test_python_toggle_repl(): """ Ensure the REPL handling works as expected. """ editor = mock.MagicMock() view = mock.MagicMock() pm = PythonMode(editor, view) pm.add_repl = mock.MagicMock() pm.remove_repl = mock.MagicMock() pm.toggle_repl(None) pm.add_repl.assert_called_once_with() pm.kernel_runner = True pm.toggle_repl(None) pm.remove_repl.assert_called_once_with()
def test_python_toggle_repl(): """ Ensure the REPL handling works as expected. """ editor = mock.MagicMock() view = mock.MagicMock() pm = PythonMode(editor, view) pm.add_repl = mock.MagicMock() pm.remove_repl = mock.MagicMock() pm.toggle_repl(None) pm.add_repl.assert_called_once_with() pm.kernel_runner = True pm.toggle_repl(None) pm.remove_repl.assert_called_once_with()