Skip to content

Commit 53364d0

Browse files
list/get checkouts
1 parent 3eb5d61 commit 53364d0

File tree

3 files changed

+27
-20
lines changed

3 files changed

+27
-20
lines changed

services/web/server/src/simcore_service_webserver/licenses/_licensed_items_checkouts_handlers.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ async def list_licensed_item_checkouts_for_wallet(request: web.Request):
116116
],
117117
)
118118

119-
page = Page[LicensedItemCheckoutRestGetPage].model_validate(
119+
page = Page[LicensedItemCheckoutRestGet].model_validate(
120120
paginate_data(
121121
chunk=get_page.items,
122122
request_url=request.url,

services/web/server/src/simcore_service_webserver/licenses/plugin.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,12 @@
88
from servicelib.aiohttp.application_setup import ModuleCategory, app_module_setup
99

1010
from ..rabbitmq import setup_rabbitmq
11-
from . import _licensed_items_handlers, _licensed_items_purchases_handlers, _rpc
11+
from . import (
12+
_licensed_items_checkouts_handlers,
13+
_licensed_items_handlers,
14+
_licensed_items_purchases_handlers,
15+
_rpc,
16+
)
1217

1318
_logger = logging.getLogger(__name__)
1419

@@ -26,6 +31,7 @@ def setup_licenses(app: web.Application):
2631
# routes
2732
app.router.add_routes(_licensed_items_handlers.routes)
2833
app.router.add_routes(_licensed_items_purchases_handlers.routes)
34+
app.router.add_routes(_licensed_items_checkouts_handlers.routes)
2935

3036
setup_rabbitmq(app)
3137
if app[APP_SETTINGS_KEY].WEBSERVER_RABBITMQ:

services/web/server/tests/unit/with_dbs/04/licenses/test_licensed_items_checkouts_handlers.py

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -7,41 +7,42 @@
77

88
import pytest
99
from aiohttp.test_utils import TestClient
10-
from models_library.api_schemas_resource_usage_tracker import (
11-
licensed_items_checkouts as rut_licensed_items_checkouts,
10+
from models_library.api_schemas_resource_usage_tracker.licensed_items_checkouts import (
11+
LicensedItemCheckoutGet,
12+
LicensedItemsCheckoutsPage,
1213
)
13-
from models_library.api_schemas_webserver.licensed_items_purchases import (
14-
LicensedItemPurchaseGet,
14+
from models_library.api_schemas_webserver.licensed_items_checkouts import (
15+
LicensedItemCheckoutRestGet,
1516
)
1617
from pytest_mock.plugin import MockerFixture
1718
from pytest_simcore.helpers.assert_checks import assert_status
1819
from pytest_simcore.helpers.webserver_login import UserInfoDict
1920
from servicelib.aiohttp import status
2021
from simcore_service_webserver.db.models import UserRole
2122

22-
_LICENSED_ITEM_CHECKOUT_GET = (
23-
rut_licensed_items_checkouts.LicensedItemCheckoutGet.model_validate({})
23+
_LICENSED_ITEM_CHECKOUT_GET = LicensedItemCheckoutGet.model_validate(
24+
LicensedItemCheckoutGet.model_config["json_schema_extra"]["examples"][0]
2425
)
2526

26-
_LICENSED_ITEM_CHECKOUT_PAGE = rut_licensed_items_checkouts.LicensedItemsCheckoutsPage(
27+
_LICENSED_ITEM_CHECKOUT_PAGE = LicensedItemsCheckoutsPage(
2728
items=[_LICENSED_ITEM_CHECKOUT_GET],
2829
total=1,
2930
)
3031

3132

3233
@pytest.fixture
33-
def mock_get_licensed_items_purchases_page(mocker: MockerFixture) -> tuple:
34+
def mock_get_licensed_items_checkouts_page(mocker: MockerFixture) -> tuple:
3435
return mocker.patch(
35-
"simcore_service_webserver.licenses._licensed_items_checkouts_api.licensed_items_checkouts_api.get_licensed_items_purchases_page",
36+
"simcore_service_webserver.licenses._licensed_items_checkouts_api.licensed_items_checkouts.get_licensed_items_checkouts_page",
3637
spec=True,
3738
return_value=_LICENSED_ITEM_CHECKOUT_PAGE,
3839
)
3940

4041

4142
@pytest.fixture
42-
def mock_get_licensed_item_purchase(mocker: MockerFixture) -> tuple:
43+
def mock_get_licensed_item_checkout(mocker: MockerFixture) -> tuple:
4344
return mocker.patch(
44-
"simcore_service_webserver.licenses._licensed_items_checkouts_api.licensed_items_purchases.get_licensed_item_purchase",
45+
"simcore_service_webserver.licenses._licensed_items_checkouts_api.licensed_items_checkouts.get_licensed_item_checkout",
4546
spec=True,
4647
return_value=_LICENSED_ITEM_CHECKOUT_GET,
4748
)
@@ -60,25 +61,25 @@ async def test_licensed_items_checkouts_handlers(
6061
client: TestClient,
6162
logged_user: UserInfoDict,
6263
expected: HTTPStatus,
63-
mock_get_licensed_items_purchases_page: MockerFixture,
64-
mock_get_licensed_item_purchase: MockerFixture,
64+
mock_get_licensed_items_checkouts_page: MockerFixture,
65+
mock_get_licensed_item_checkout: MockerFixture,
6566
mock_get_wallet_by_user: MockerFixture,
6667
):
6768
assert client.app
6869

6970
# list
70-
url = client.app.router["list_wallet_licensed_items_purchases"].url_for(
71+
url = client.app.router["list_licensed_item_checkouts_for_wallet"].url_for(
7172
wallet_id="1"
7273
)
7374
resp = await client.get(f"{url}")
7475
data, _ = await assert_status(resp, status.HTTP_200_OK)
7576
assert len(data) == 1
76-
assert LicensedItemPurchaseGet(**data[0])
77+
assert LicensedItemCheckoutRestGet(**data[0])
7778

7879
# get
79-
url = client.app.router["get_licensed_item_purchase"].url_for(
80-
licensed_item_purchase_id=f"{_LICENSED_ITEM_PURCHASE_PAGE.items[0].licensed_item_purchase_id}"
80+
url = client.app.router["get_licensed_item_checkout"].url_for(
81+
licensed_item_checkout_id=f"{_LICENSED_ITEM_CHECKOUT_PAGE.items[0].licensed_item_checkout_id}"
8182
)
8283
resp = await client.get(f"{url}")
8384
data, _ = await assert_status(resp, status.HTTP_200_OK)
84-
assert LicensedItemPurchaseGet(**data)
85+
assert LicensedItemCheckoutRestGet(**data)

0 commit comments

Comments
 (0)