Skip to content

Commit 4673d3f

Browse files
refactor RUT
1 parent eee4eb2 commit 4673d3f

32 files changed

+946
-512
lines changed
Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,18 @@
11
from datetime import datetime
22
from typing import NamedTuple
33

4-
from models_library.licenses import LicensedItemID
4+
from models_library.licenses import LicenseID
55
from models_library.products import ProductName
6-
from models_library.resource_tracker_licensed_items_checkouts import (
7-
LicensedItemCheckoutID,
8-
)
6+
from models_library.resource_tracker_license_checkouts import LicenseCheckoutID
97
from models_library.services_types import ServiceRunID
108
from models_library.users import UserID
119
from models_library.wallets import WalletID
1210
from pydantic import BaseModel, ConfigDict, PositiveInt
1311

1412

15-
class LicensedItemCheckoutGet(BaseModel):
16-
licensed_item_checkout_id: LicensedItemCheckoutID
17-
licensed_item_id: LicensedItemID
13+
class LicenseCheckoutGet(BaseModel):
14+
license_checkout_id: LicenseCheckoutID
15+
license_id: LicenseID
1816
wallet_id: WalletID
1917
user_id: UserID
2018
user_email: str
@@ -28,8 +26,8 @@ class LicensedItemCheckoutGet(BaseModel):
2826
json_schema_extra={
2927
"examples": [
3028
{
31-
"licensed_item_checkout_id": "beb16d18-d57d-44aa-a638-9727fa4a72ef",
32-
"licensed_item_id": "303942ef-6d31-4ba8-afbe-dbb1fce2a953",
29+
"license_checkout_id": "beb16d18-d57d-44aa-a638-9727fa4a72ef",
30+
"license_id": "303942ef-6d31-4ba8-afbe-dbb1fce2a953",
3331
"wallet_id": 1,
3432
"user_id": 1,
3533
"user_email": "[email protected]",
@@ -44,6 +42,6 @@ class LicensedItemCheckoutGet(BaseModel):
4442
)
4543

4644

47-
class LicensedItemsCheckoutsPage(NamedTuple):
48-
items: list[LicensedItemCheckoutGet]
45+
class LicenseCheckoutsPage(NamedTuple):
46+
items: list[LicenseCheckoutGet]
4947
total: PositiveInt
Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,19 @@
22
from decimal import Decimal
33
from typing import NamedTuple
44

5-
from models_library.licenses import LicensedItemID
5+
from models_library.licenses import LicenseID
66
from models_library.products import ProductName
77
from models_library.resource_tracker import PricingUnitCostId
8-
from models_library.resource_tracker_licensed_items_purchases import (
9-
LicensedItemPurchaseID,
10-
)
8+
from models_library.resource_tracker_license_purchases import LicensePurchaseID
119
from models_library.users import UserID
1210
from models_library.wallets import WalletID
1311
from pydantic import BaseModel, ConfigDict, PositiveInt
1412

1513

16-
class LicensedItemPurchaseGet(BaseModel):
17-
licensed_item_purchase_id: LicensedItemPurchaseID
14+
class LicensePurchaseGet(BaseModel):
15+
licensed_item_purchase_id: LicensePurchaseID
1816
product_name: ProductName
19-
licensed_item_id: LicensedItemID
17+
license_id: LicenseID
2018
wallet_id: WalletID
2119
wallet_name: str
2220
pricing_unit_cost_id: PricingUnitCostId
@@ -35,7 +33,7 @@ class LicensedItemPurchaseGet(BaseModel):
3533
{
3634
"licensed_item_purchase_id": "beb16d18-d57d-44aa-a638-9727fa4a72ef",
3735
"product_name": "osparc",
38-
"licensed_item_id": "303942ef-6d31-4ba8-afbe-dbb1fce2a953",
36+
"license_id": "303942ef-6d31-4ba8-afbe-dbb1fce2a953",
3937
"wallet_id": 1,
4038
"wallet_name": "My Wallet",
4139
"pricing_unit_cost_id": 1,
@@ -53,6 +51,6 @@ class LicensedItemPurchaseGet(BaseModel):
5351
)
5452

5553

56-
class LicensedItemsPurchasesPage(NamedTuple):
57-
items: list[LicensedItemPurchaseGet]
54+
class LicensesPurchasesPage(NamedTuple):
55+
items: list[LicensePurchaseGet]
5856
total: PositiveInt

packages/models-library/src/models_library/licenses.py

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@
1212
from .resource_tracker import PricingPlanId
1313
from .utils.enums import StrAutoEnum
1414

15-
LicensedItemID: TypeAlias = UUID
15+
LicensedItemID: TypeAlias = UUID # <-- LicensedItemID == LicenseID
16+
LicenseID: TypeAlias = UUID
17+
LicensedResourceID: TypeAlias = UUID
1618

1719

1820
class LicensedResourceType(StrAutoEnum):
@@ -64,8 +66,8 @@ class FeaturesDict(TypedDict):
6466
#
6567

6668

67-
class LicensedItemDB(BaseModel):
68-
licensed_item_id: LicensedItemID
69+
class LicenseDB(BaseModel):
70+
licensed_resource_id: LicensedResourceID
6971
display_name: str
7072

7173
licensed_resource_name: str
@@ -83,15 +85,15 @@ class LicensedItemDB(BaseModel):
8385
model_config = ConfigDict(from_attributes=True)
8486

8587

86-
class LicensedItemUpdateDB(BaseModel):
88+
class LicenseUpdateDB(BaseModel):
8789
display_name: str | None = None
8890
licensed_resource_name: str | None = None
8991
pricing_plan_id: PricingPlanId | None = None
9092
trash: bool | None = None
9193

9294

93-
class LicensedItem(BaseModel):
94-
licensed_item_id: LicensedItemID
95+
class LicensedResource(BaseModel):
96+
licensed_resource_id: LicensedResourceID
9597
display_name: str
9698
licensed_resource_name: str
9799
licensed_resource_type: LicensedResourceType
@@ -106,7 +108,7 @@ def _update_json_schema_extra(schema: JsonDict) -> None:
106108
{
107109
"examples": [
108110
{
109-
"licensed_item_id": "0362b88b-91f8-4b41-867c-35544ad1f7a1",
111+
"licensed_resource_id": "0362b88b-91f8-4b41-867c-35544ad1f7a1",
110112
"display_name": "my best model",
111113
"licensed_resource_name": "best-model",
112114
"licensed_resource_type": f"{LicensedResourceType.VIP_MODEL}",
@@ -129,6 +131,6 @@ def _update_json_schema_extra(schema: JsonDict) -> None:
129131
model_config = ConfigDict(json_schema_extra=_update_json_schema_extra)
130132

131133

132-
class LicensedItemPage(NamedTuple):
134+
class LicensedResourcePage(NamedTuple):
133135
total: PositiveInt
134-
items: list[LicensedItem]
136+
items: list[LicensedResource]
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
from typing import TypeAlias
22
from uuid import UUID
33

4-
LicensedItemCheckoutID: TypeAlias = UUID
4+
LicenseCheckoutID: TypeAlias = UUID
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,18 @@
55

66
from pydantic import BaseModel, ConfigDict
77

8-
from .licenses import LicensedItemID
8+
from .licenses import LicenseID
99
from .products import ProductName
1010
from .resource_tracker import PricingPlanId, PricingUnitCostId, PricingUnitId
1111
from .users import UserID
1212
from .wallets import WalletID
1313

14-
LicensedItemPurchaseID: TypeAlias = UUID
14+
LicensePurchaseID: TypeAlias = UUID
1515

1616

17-
class LicensedItemsPurchasesCreate(BaseModel):
17+
class LicensePurchasesCreate(BaseModel):
1818
product_name: ProductName
19-
licensed_item_id: LicensedItemID
19+
license_id: LicenseID
2020
wallet_id: WalletID
2121
wallet_name: str
2222
pricing_plan_id: PricingPlanId

packages/models-library/tests/test_licenses.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
from models_library.api_schemas_webserver.licensed_items import LicensedItemRestGet
2-
from models_library.licenses import LicensedItem
1+
from models_library.api_schemas_webserver.licensed_items import LicenseRestGet
2+
from models_library.licenses import LicensedResource
33
from pydantic import ConfigDict
44

55

66
def test_licensed_item_from_domain_model():
7-
for example in LicensedItem.model_json_schema()["examples"]:
8-
item = LicensedItem.model_validate(example)
7+
for example in LicensedResource.model_json_schema()["examples"]:
8+
item = LicensedResource.model_validate(example)
99

10-
got = LicensedItemRestGet.from_domain_model(item)
10+
got = LicenseRestGet.from_domain_model(item)
1111

1212
assert item.display_name == got.display_name
1313

@@ -31,8 +31,8 @@ def test_licensed_item_from_domain_model():
3131

3232

3333
def test_strict_check_of_examples():
34-
class TestLicensedItemRestGet(LicensedItemRestGet):
34+
class TestLicenseRestGet(LicenseRestGet):
3535
model_config = ConfigDict(extra="forbid")
3636

37-
for example in LicensedItemRestGet.model_json_schema()["examples"]:
38-
TestLicensedItemRestGet.model_validate(example)
37+
for example in LicenseRestGet.model_json_schema()["examples"]:
38+
TestLicenseRestGet.model_validate(example)

0 commit comments

Comments
 (0)