File tree Expand file tree Collapse file tree 3 files changed +25
-19
lines changed
src/simcore_service_webserver/licenses
tests/unit/with_dbs/04/licenses Expand file tree Collapse file tree 3 files changed +25
-19
lines changed Original file line number Diff line number Diff line change 1+ from typing import Annotated
2+
3+ from pydantic import AfterValidator , HttpUrl
4+ from settings_library .base import BaseCustomSettings
5+
6+
7+ def _validate_url_contains_category (url : str ) -> str :
8+ if "{category}" not in url :
9+ msg = "URL must contain '{category}'"
10+ raise ValueError (msg )
11+ return url
12+
13+
14+ class ItisVipSettings (BaseCustomSettings ):
15+ ITIS_VIP_API_URL : Annotated [str , AfterValidator (_validate_url_contains_category )]
16+ ITIS_VIP_CATEGORIES : list [str ]
17+
18+ def get_urls (self ) -> list [HttpUrl ]:
19+ return [
20+ HttpUrl (self .ITIS_VIP_API_URL .format (category = category ))
21+ for category in self .ITIS_VIP_CATEGORIES
22+ ]
Original file line number Diff line number Diff line change 11from typing import Annotated
22
3- from pydantic import AfterValidator , Field , HttpUrl
3+ from pydantic import Field
44from settings_library .base import BaseCustomSettings
55
6-
7- def _validate_url_contains_category (url : str ) -> str :
8- if "{category}" not in url :
9- msg = "URL must contain '{category}'"
10- raise ValueError (msg )
11- return url
12-
13-
14- class ItisVipSettings (BaseCustomSettings ):
15- ITIS_VIP_API_URL : Annotated [str , AfterValidator (_validate_url_contains_category )]
16- ITIS_VIP_CATEGORIES : list [str ]
17-
18- def get_urls (self ) -> list [HttpUrl ]:
19- return [
20- HttpUrl (self .ITIS_VIP_API_URL .format (category = category ))
21- for category in self .ITIS_VIP_CATEGORIES
22- ]
6+ from ._itis_vip_settings import ItisVipSettings
237
248
259class LicensesSettings (BaseCustomSettings ):
Original file line number Diff line number Diff line change 1616from servicelib .aiohttp import status
1717from simcore_service_webserver .licenses import _itis_vip_service
1818from simcore_service_webserver .licenses ._itis_vip_service import ResponseData
19- from simcore_service_webserver .licenses .settings import ItisVipSettings
19+ from simcore_service_webserver .licenses ._itis_vip_settings import ItisVipSettings
2020
2121
2222@pytest .fixture (scope = "session" )
You can’t perform that action at this time.
0 commit comments