Esempio n. 1
0
def test_worker_run():
    """
    Ensure the finished signal is called when the tasks called in the run
    method are completed.
    """
    w = StartupWorker()
    w.finished = mock.MagicMock()
    with mock.patch("mu.app.venv.ensure") as mock_ensure:
        w.run()
        mock_ensure.assert_called_once_with()
        w.finished.emit.assert_called_once_with()
Esempio n. 2
0
def test_worker_run():
    """
    Ensure the finished signal is called when the tasks called in the run
    method are completed.
    """
    w = StartupWorker()
    slh = SplashLogHandler(w.display_text)
    vlogger.addHandler(slh)
    w.finished = mock.MagicMock()
    with mock.patch("mu.app.venv.ensure_and_create") as mock_ensure:
        w.run()
        assert mock_ensure.call_count == 1
        w.finished.emit.assert_called_once_with()
    # Ensure the splash related logger handler has been removed.
    while vlogger.hasHandlers() and vlogger.handlers:
        handler = vlogger.handlers[0]
        assert not isinstance(handler, SplashLogHandler)
Esempio n. 3
0
def test_worker_fail():
    """
    Ensure that exceptions encountered during Mu's start-up are handled in the
    expected manner.
    """
    w = StartupWorker()
    w.finished = mock.MagicMock()
    w.failed = mock.MagicMock()
    mock_ensure = mock.MagicMock()
    ex = RuntimeError("Boom")
    mock_ensure.side_effect = ex
    with pytest.raises(RuntimeError):
        with mock.patch("mu.app.venv.ensure_and_create",
                        mock_ensure), mock.patch("mu.app.time") as mock_time:
            w.run()
    assert mock_ensure.call_count == 1
    assert w.failed.emit.call_count == 1
    mock_time.sleep.assert_called_once_with(7)
    w.finished.emit.assert_called_once_with()