Skip to content

Commit 7a6ca5f

Browse files
committed
only missing check that objects coincide
1 parent 728c497 commit 7a6ca5f

File tree

1 file changed

+38
-5
lines changed

1 file changed

+38
-5
lines changed
Lines changed: 38 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,46 @@
11
import pytest
22
from pytest_mock import MockerFixture
3-
from osparc import JobMetadata
3+
from osparc import JobMetadata, MetadataValue, ApiClient, SolversApi
44
from faker import Faker
5+
from urllib3 import HTTPResponse
56

67

78
@pytest.fixture
8-
def job_metadata(faker: Faker):
9-
JobMetadata(job_id=faker.uuid4(), metadata={"int": 2})
9+
def job_metadata(faker: Faker) -> JobMetadata:
10+
_job_id = faker.uuid4()
11+
return JobMetadata(
12+
job_id=f"{_job_id}",
13+
metadata={
14+
"job_id": MetadataValue(_job_id),
15+
"job_name": MetadataValue(faker.text()),
16+
"node_id": MetadataValue(faker.uuid4()),
17+
},
18+
url=faker.url(),
19+
)
1020

1121

12-
def test_job_metadata_serialization(mocker: MockerFixture):
13-
pass
22+
def test_job_metadata_serialization(
23+
mocker: MockerFixture,
24+
job_metadata: JobMetadata,
25+
api_client: ApiClient,
26+
faker: Faker,
27+
):
28+
def _get_job_sideeffect(
29+
method: str,
30+
url: str,
31+
body=None,
32+
fields=None,
33+
headers=None,
34+
json=None,
35+
**urlopen_kw,
36+
) -> HTTPResponse:
37+
response = HTTPResponse(status=200, body=job_metadata.to_json().encode())
38+
return response
39+
40+
mocker.patch("urllib3.PoolManager.request", side_effect=_get_job_sideeffect)
41+
42+
_solvers_api = SolversApi(api_client=api_client)
43+
metadata = _solvers_api.get_job_custom_metadata(
44+
solver_key="mysolver", version="1.2.3", job_id=f"{faker.uuid4()}"
45+
)
46+
print(metadata)

0 commit comments

Comments
 (0)