Ejemplo n.º 1
0
def test_query_flow_runs_does_not_use_submitting_flow_runs_directly(
    monkeypatch, runner_token, caplog, cloud_api
):
    gql_return = MagicMock(
        return_value=MagicMock(
            data=MagicMock(
                get_runs_in_queue=MagicMock(flow_run_ids=["already-submitted-id"]),
                flow_run=[{"id": "id"}],
            )
        )
    )
    client = MagicMock()
    client.return_value.graphql = gql_return
    monkeypatch.setattr("prefect.agent.agent.Client", client)

    agent = Agent()
    agent.logger.setLevel(logging.DEBUG)
    copy_mock = MagicMock(return_value=set(["already-submitted-id"]))
    agent.submitting_flow_runs = MagicMock(copy=copy_mock)

    flow_runs = agent.query_flow_runs()

    assert flow_runs == []
    assert "1 already submitting: ['already-submitted-id']" in caplog.text
    copy_mock.assert_called_once_with()
Ejemplo n.º 2
0
def test_get_ready_flow_runs_copies_submitting_flow_runs(
        monkeypatch, caplog, cloud_api):
    Client = MagicMock()
    Client().graphql.return_value.data.get_runs_in_queue.flow_run_ids = [
        "already-submitted-id"
    ]
    monkeypatch.setattr("prefect.agent.agent.Client", Client)

    agent = Agent()
    agent.logger.setLevel(logging.DEBUG)
    agent.submitting_flow_runs = MagicMock()
    agent.submitting_flow_runs.copy.return_value = {"already-submitted-id"}

    flow_runs = agent._get_ready_flow_runs()
    assert flow_runs == set()
    assert "1 already being submitted: ['already-submitted-id']" in caplog.text
    agent.submitting_flow_runs.copy.assert_called_once_with()