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()
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)