Skip to content

Commit 6190b6a

Browse files
committed
Fix issues with InfrahubTask filter not working with ids
1 parent 320529e commit 6190b6a

File tree

2 files changed

+35
-0
lines changed

2 files changed

+35
-0
lines changed

backend/infrahub/graphql/queries/task.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ async def query(
7474
prefect_tasks = await PrefectTask.query(
7575
db=context.db,
7676
fields=fields,
77+
ids=ids,
7778
branch=branch,
7879
statuses=statuses,
7980
tags=tags,

backend/tests/unit/graphql/queries/test_task.py

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
import pytest
55
from graphql import ExecutionResult, graphql
6+
from infrahub_sdk.graphql import Query
67
from prefect.artifacts import ArtifactRequest
78
from prefect.client.orchestration import PrefectClient, get_client
89
from prefect.states import State
@@ -389,6 +390,39 @@ async def test_task_query_prefect(
389390
assert result.data["InfrahubTask"]["count"] == len(task_names)
390391

391392

393+
async def test_task_query_filter_id(
394+
db: InfrahubDatabase, default_branch: Branch, register_core_models_schema: None, flow_runs_data
395+
):
396+
dummy_completed_br1_db = flow_runs_data["dummy-completed-br1-db"]
397+
dummy_running_br1 = flow_runs_data["dummy-running-br1"]
398+
399+
query = Query(
400+
query={
401+
"InfrahubTask": {
402+
"@filters": {"ids": [str(dummy_completed_br1_db.id), str(dummy_running_br1.id)]},
403+
"count": None,
404+
"edges": {"node": {"id": None, "title": None}},
405+
}
406+
}
407+
)
408+
409+
result = await run_query(
410+
db=db,
411+
branch=default_branch,
412+
query=query.render(),
413+
variables={},
414+
)
415+
assert result.errors is None
416+
assert result.data
417+
418+
task_names = sorted([task["node"]["title"] for task in result.data["InfrahubTask"]["edges"]])
419+
assert task_names == [
420+
"dummy-completed-br1-db",
421+
"dummy-running-br1",
422+
]
423+
assert result.data["InfrahubTask"]["count"] == len(task_names)
424+
425+
392426
async def test_task_query_filter_branch(
393427
db: InfrahubDatabase, default_branch: Branch, register_core_models_schema: None, flow_runs_data
394428
):

0 commit comments

Comments
 (0)