|
| 1 | +# pylint: disable=protected-access |
| 2 | +# pylint: disable=redefined-outer-name |
| 3 | +# pylint: disable=unused-argument |
| 4 | +# pylint: disable=unused-variable |
| 5 | + |
| 6 | +import pytest |
| 7 | +from models_library.products import ProductName |
| 8 | +from models_library.users import UserID |
| 9 | +from pytest_mock import MockerFixture, MockType |
| 10 | +from simcore_service_api_server._service_solvers import SolverService |
| 11 | +from simcore_service_api_server.models.schemas.solvers import Solver |
| 12 | +from simcore_service_api_server.services_rpc.catalog import CatalogService |
| 13 | +from simcore_service_api_server.services_rpc.wb_api_server import WbApiRpcClient |
| 14 | + |
| 15 | + |
| 16 | +@pytest.fixture |
| 17 | +def solver_service( |
| 18 | + mocker: MockerFixture, |
| 19 | + mocked_rpc_catalog_service_api: dict[str, MockType], |
| 20 | +) -> SolverService: |
| 21 | + return SolverService( |
| 22 | + catalog_service=CatalogService(client=mocker.MagicMock()), |
| 23 | + webserver_client=WbApiRpcClient(_client=mocker.MagicMock()), |
| 24 | + ) |
| 25 | + |
| 26 | + |
| 27 | +async def test_get_solver( |
| 28 | + solver_service: SolverService, |
| 29 | + mocked_rpc_catalog_service_api: dict[str, MockType], |
| 30 | + product_name: ProductName, |
| 31 | + user_id: UserID, |
| 32 | +): |
| 33 | + solver = await solver_service.get_solver( |
| 34 | + user_id=user_id, |
| 35 | + name="simcore/services/comp/solver-1", |
| 36 | + version="1.0.0", |
| 37 | + product_name=product_name, |
| 38 | + ) |
| 39 | + |
| 40 | + assert isinstance(solver, Solver) |
| 41 | + mocked_rpc_catalog_service_api["get_service"].assert_called_once() |
0 commit comments