Skip to content

Commit c03c75b

Browse files
committed
drafting tests
1 parent 333ca48 commit c03c75b

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

services/api-server/tests/unit/test_service_solvers.py

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
def solver_service(
1818
mocker: MockerFixture,
1919
mocked_catalog_rpc_api: dict[str, MockType],
20+
mocked_webserver_rpc_api: dict[str, MockType],
2021
) -> SolverService:
2122
return SolverService(
2223
catalog_service=CatalogService(client=mocker.MagicMock()),
@@ -39,3 +40,43 @@ async def test_get_solver(
3940

4041
assert isinstance(solver, Solver)
4142
mocked_catalog_rpc_api["get_service"].assert_called_once()
43+
44+
45+
async def test_list_jobs(
46+
solver_service: SolverService,
47+
mocked_webserver_rpc_api: dict[str, MockType],
48+
product_name: ProductName,
49+
user_id: UserID,
50+
):
51+
# Test default parameters
52+
jobs, page_meta = await solver_service.list_jobs(
53+
user_id=user_id,
54+
product_name=product_name,
55+
)
56+
assert isinstance(jobs, list)
57+
mocked_webserver_rpc_api["list_projects_marked_as_jobs"].assert_called_once_with(
58+
product_name=product_name,
59+
user_id=user_id,
60+
offset=0,
61+
limit=999,
62+
job_parent_resource_name_filter="solvers",
63+
)
64+
assert page_meta.total >= 0
65+
assert page_meta.limit == 999
66+
assert page_meta.offset == 0
67+
68+
# Test with explicit pagination
69+
mocked_webserver_rpc_api["list_projects_marked_as_jobs"].reset_mock()
70+
jobs, page_meta = await solver_service.list_jobs(
71+
user_id=user_id,
72+
product_name=product_name,
73+
offset=10,
74+
limit=20,
75+
)
76+
mocked_webserver_rpc_api["list_projects_marked_as_jobs"].assert_called_once_with(
77+
product_name=product_name,
78+
user_id=user_id,
79+
offset=10,
80+
limit=20,
81+
job_parent_resource_name_filter="solvers",
82+
)

0 commit comments

Comments
 (0)