Exemple #1
0
def test_exit(workspace: Workspace,
              monkeypatch: _pytest.monkeypatch.MonkeyPatch) -> None:
    patch(monkeypatch,
          tft.artemis.tasks.route_guest_request.metrics.ProvisioningMetrics,
          'inc_failover')

    assert workspace.exit() is workspace

    assert workspace.result is tft.artemis.tasks.SUCCESS
    cast(
        MagicMock, tft.artemis.tasks.route_guest_request.metrics.
        ProvisioningMetrics.inc_failover).assert_not_called()
Exemple #2
0
def test_exit_failover(workspace: Workspace,
                       monkeypatch: _pytest.monkeypatch.MonkeyPatch,
                       caplog: _pytest.logging.LogCaptureFixture) -> None:
    workspace.current_poolname = 'pool1'
    workspace.new_pool = MagicMock(name='pool2', poolname='pool2')

    patch(monkeypatch,
          tft.artemis.tasks.route_guest_request.metrics.ProvisioningMetrics,
          'inc_failover')

    assert workspace.exit() is workspace

    assert workspace.result is tft.artemis.tasks.SUCCESS

    cast(
        MagicMock,
        tft.artemis.tasks.route_guest_request.metrics.ProvisioningMetrics.
        inc_failover).assert_called_once_with('pool1', 'pool2')

    assert_log(caplog,
               message='failover: switched pool1 => pool2',
               levelno=logging.WARNING)