Ejemplo n.º 1
0
def test_dispatch_provisioning(
        workspace: Workspace,
        monkeypatch: _pytest.monkeypatch.MonkeyPatch) -> None:
    workspace.new_pool = MagicMock(name='pool1')

    patch(monkeypatch, workspace, 'dispatch_task')
    patch(monkeypatch, workspace, 'ungrab_guest_request')

    assert workspace.dispatch_provisioning() is workspace

    cast(MagicMock, workspace.dispatch_task).assert_called_once_with(
        tft.artemis.tasks.acquire_guest_request, workspace.guestname,
        workspace.new_pool.poolname)

    cast(MagicMock, workspace.ungrab_guest_request).assert_not_called()
Ejemplo n.º 2
0
def test_dispatch_provisioning_fail_dispatch(
        workspace: Workspace,
        monkeypatch: _pytest.monkeypatch.MonkeyPatch) -> None:
    workspace.new_pool = MagicMock(name='pool1')

    mock_error: tft.artemis.tasks.DoerReturnType = Error(
        tft.artemis.Failure('mock error'))

    def mock_dispatch_task(*args: Any, **kwargs: Any) -> None:
        workspace.result = mock_error

    patch(monkeypatch, workspace,
          'dispatch_task').side_effect = mock_dispatch_task
    patch(monkeypatch, workspace, 'ungrab_guest_request')

    assert workspace.dispatch_provisioning() is workspace

    cast(MagicMock, workspace.dispatch_task).assert_called_once_with(
        tft.artemis.tasks.acquire_guest_request, workspace.guestname,
        workspace.new_pool.poolname)

    cast(MagicMock, workspace.ungrab_guest_request).assert_called_once_with(
        tft.artemis.guest.GuestState.PROVISIONING,
        tft.artemis.guest.GuestState.ROUTING)