Beispiel #1
0
def test_switch_to_provisioning(
        workspace: Workspace,
        monkeypatch: _pytest.monkeypatch.MonkeyPatch) -> None:
    workspace.gr = MagicMock(name='dummy-guest-request')
    workspace.new_pool = MagicMock(name='dummy-pool')

    patch(monkeypatch, workspace, 'update_guest_state')

    assert workspace.switch_to_provisioning() is workspace

    cast(MagicMock, workspace.update_guest_state).assert_called_once_with(
        tft.artemis.guest.GuestState.PROVISIONING,
        current_state=tft.artemis.guest.GuestState.ROUTING,
        set_values={'poolname': workspace.new_pool.poolname},
        pool=workspace.new_pool.poolname)
Beispiel #2
0
def test_query_policies(workspace: Workspace,
                        session: sqlalchemy.orm.session.Session,
                        monkeypatch: _pytest.monkeypatch.MonkeyPatch) -> None:
    workspace.gr = MagicMock(name='workspace.gr<mock>')
    workspace.pools = []

    mock_ruling = tft.artemis.routing_policies.PolicyRuling()

    patch(monkeypatch, workspace, 'run_hook').return_value = mock_ruling

    assert workspace.query_policies() is workspace

    assert workspace.result is None
    assert workspace.ruling is mock_ruling

    cast(MagicMock, workspace.run_hook).assert_called_once_with(
        'ROUTE',
        session=session,
        guest_request=workspace.gr,
        pools=workspace.pools)