|
4 | 4 |
|
5 | 5 |
|
6 | 6 | from typing import Any |
| 7 | +from uuid import UUID |
7 | 8 |
|
8 | 9 | import pytest |
9 | 10 | from faker import Faker |
|
13 | 14 | DockerLabelKey, |
14 | 15 | StandardSimcoreDockerLabels, |
15 | 16 | ) |
16 | | -from pydantic import TypeAdapter, ValidationError |
| 17 | +from pydantic import ByteSize, TypeAdapter, ValidationError |
17 | 18 |
|
18 | 19 | _faker = Faker() |
19 | 20 |
|
@@ -83,11 +84,11 @@ def test_docker_label_key(label_key: str, valid: bool): |
83 | 84 | True, |
84 | 85 | ), |
85 | 86 | ( |
86 | | - f"registry:5000/si.m--c_ore/services/1234/jupyter-smash:{'A'*128}", |
| 87 | + f"registry:5000/si.m--c_ore/services/1234/jupyter-smash:{'A' * 128}", |
87 | 88 | True, |
88 | 89 | ), |
89 | 90 | ( |
90 | | - f"registry:5000/si.m--c_ore/services/1234/jupyter-smash:{'A'*129}", |
| 91 | + f"registry:5000/si.m--c_ore/services/1234/jupyter-smash:{'A' * 129}", |
91 | 92 | False, |
92 | 93 | ), |
93 | 94 | ), |
@@ -122,3 +123,17 @@ def test_simcore_service_docker_label_keys(obj_data: dict[str, Any]): |
122 | 123 | ).validate_python(exported_dict) |
123 | 124 | assert re_imported_docker_label_keys |
124 | 125 | assert simcore_service_docker_label_keys == re_imported_docker_label_keys |
| 126 | + |
| 127 | + |
| 128 | +def test_simcore_service_docker_label_keys_construction(): |
| 129 | + simcore_service_docker_label_keys = StandardSimcoreDockerLabels( |
| 130 | + user_id=8268, |
| 131 | + project_id=UUID("5ea24ce0-0e4d-4ee6-a3f1-e4799752a684"), |
| 132 | + node_id=UUID("c17c6279-23c6-412f-8826-867323a7711a"), |
| 133 | + product_name="osparc", |
| 134 | + simcore_user_agent="oePqmjQbZndJghceKRJR", |
| 135 | + swarm_stack_name="UNDEFINED_DOCKER_LABEL", # NOTE: there is currently no need for this label in the comp backend |
| 136 | + memory_limit=ByteSize(23424324), |
| 137 | + cpu_limit=1.0, |
| 138 | + ) |
| 139 | + assert simcore_service_docker_label_keys.cpu_limit == 1.0 |
0 commit comments