|
3 | 3 |
|
4 | 4 | import pytest |
5 | 5 | from graphql import ExecutionResult, graphql |
| 6 | +from infrahub_sdk.graphql import Query |
6 | 7 | from prefect.artifacts import ArtifactRequest |
7 | 8 | from prefect.client.orchestration import PrefectClient, get_client |
8 | 9 | from prefect.states import State |
@@ -389,6 +390,39 @@ async def test_task_query_prefect( |
389 | 390 | assert result.data["InfrahubTask"]["count"] == len(task_names) |
390 | 391 |
|
391 | 392 |
|
| 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 | + |
392 | 426 | async def test_task_query_filter_branch( |
393 | 427 | db: InfrahubDatabase, default_branch: Branch, register_core_models_schema: None, flow_runs_data |
394 | 428 | ): |
|
0 commit comments