Skip to content

Commit d55022a

Browse files
committed
refactoring
1 parent 306d603 commit d55022a

File tree

5 files changed

+22
-17
lines changed

5 files changed

+22
-17
lines changed

packages/pytest-simcore/src/pytest_simcore/simcore_storage_data_models.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from contextlib import asynccontextmanager
88
from pathlib import Path
99
from random import choice, randint
10-
from typing import Any, cast
10+
from typing import Any, TypedDict, cast
1111

1212
import pytest
1313
import sqlalchemy as sa
@@ -259,6 +259,11 @@ async def _creator(
259259
return _creator
260260

261261

262+
class FileIDDict(TypedDict):
263+
path: Path
264+
sha256_checksum: SHA256Str
265+
266+
262267
async def _upload_file_and_update_project(
263268
project_id: ProjectID,
264269
node_id: NodeID,

services/storage/tests/conftest.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@
7070
from types_aiobotocore_s3 import S3Client
7171
from yarl import URL
7272

73+
from tests.fixtures.data_models import FileIDDict
7374
from tests.helpers.utils_file_meta_data import assert_file_meta_data_in_db
7475

7576
pytest_plugins = [

services/storage/tests/unit/test_handlers_files.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,8 +68,6 @@
6868
from types_aiobotocore_s3 import S3Client
6969
from yarl import URL
7070

71-
from tests.helpers.utils_file_meta_data import assert_file_meta_data_in_db
72-
7371
pytest_simcore_core_services_selection = ["postgres"]
7472
pytest_simcore_ops_services_selection = ["adminer"]
7573

services/storage/tests/unit/test_handlers_paths.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
from pytest_simcore.helpers.fastapi import url_from_operation_id
2020
from pytest_simcore.helpers.httpx_assert_checks import assert_status
2121
from servicelib.aiohttp import status
22+
from tests.fixtures.data_models import FileIDDict
2223

2324
pytest_simcore_core_services_selection = ["postgres"]
2425
pytest_simcore_ops_services_selection = ["adminer"]
@@ -55,7 +56,7 @@ async def test_list_paths_root_folder(
5556
user_id: UserID,
5657
with_random_project_with_files: tuple[
5758
ProjectAtDB,
58-
dict[NodeID, dict[SimcoreS3FileID, dict[str, Path | str]]],
59+
dict[NodeID, dict[SimcoreS3FileID, FileIDDict]],
5960
],
6061
):
6162
project_in_db, list_of_files = with_random_project_with_files

services/storage/tests/unit/test_handlers_simcore_s3.py

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -229,20 +229,20 @@ async def test_copy_folders_from_valid_project_with_one_large_file(
229229
(sha256_checksum,),
230230
)
231231
# 2. create a dst project without files
232-
dst_project, nodes_map = clone_project_data(src_project.model_dump(mode="json"))
232+
dst_project, nodes_map = clone_project_data(src_project)
233233
dst_project = await create_project(**dst_project)
234234
# copy the project files
235235
data = await _request_copy_folders(
236236
initialized_app,
237237
client,
238238
user_id,
239-
src_project.model_dump(mode="json"),
239+
src_project,
240240
dst_project,
241241
nodes_map={NodeID(i): NodeID(j) for i, j in nodes_map.items()},
242242
)
243-
assert data == (
243+
assert data == jsonable_encoder(
244244
await get_updated_project(sqlalchemy_async_engine, dst_project["uuid"])
245-
).model_dump(mode="json")
245+
)
246246
# check that file meta data was effectively copied
247247
for src_node_id in src_projects_list:
248248
dst_node_id = nodes_map.get(
@@ -292,20 +292,20 @@ async def test_copy_folders_from_valid_project(
292292
# 1. create a src project with some files
293293
src_project, src_projects_list = await random_project_with_files()
294294
# 2. create a dst project without files
295-
dst_project, nodes_map = clone_project_data(src_project.model_dump(mode="json"))
295+
dst_project, nodes_map = clone_project_data(src_project)
296296
dst_project = await create_project(**dst_project)
297297
# copy the project files
298298
data = await _request_copy_folders(
299299
initialized_app,
300300
client,
301301
user_id,
302-
src_project.model_dump(mode="json"),
302+
src_project,
303303
dst_project,
304304
nodes_map={NodeID(i): NodeID(j) for i, j in nodes_map.items()},
305305
)
306-
assert data == (
306+
assert data == jsonable_encoder(
307307
await get_updated_project(sqlalchemy_async_engine, dst_project["uuid"])
308-
).model_dump(mode="json")
308+
)
309309

310310
# check that file meta data was effectively copied
311311
for src_node_id in src_projects_list:
@@ -337,21 +337,21 @@ async def test_copy_folders_from_valid_project(
337337

338338
async def _create_and_delete_folders_from_project(
339339
user_id: UserID,
340-
project: ProjectAtDB,
340+
project: dict[str, Any],
341341
initialized_app: FastAPI,
342342
client: httpx.AsyncClient,
343343
project_db_creator: Callable,
344344
check_list_files: bool,
345345
) -> None:
346-
destination_project, nodes_map = clone_project_data(project.model_dump(mode="json"))
346+
destination_project, nodes_map = clone_project_data(project)
347347
await project_db_creator(**destination_project)
348348

349349
# creating a copy
350350
data = await _request_copy_folders(
351351
initialized_app,
352352
client,
353353
user_id,
354-
project.model_dump(mode="json"),
354+
project,
355355
destination_project,
356356
nodes_map={NodeID(i): NodeID(j) for i, j in nodes_map.items()},
357357
)
@@ -430,7 +430,7 @@ async def test_create_and_delete_folders_from_project(
430430
user_id: UserID,
431431
create_project: Callable[..., Awaitable[dict[str, Any]]],
432432
with_random_project_with_files: tuple[
433-
ProjectAtDB,
433+
dict[str, Any],
434434
dict[NodeID, dict[SimcoreS3FileID, dict[str, Path | str]]],
435435
],
436436
mock_datcore_download,
@@ -454,7 +454,7 @@ async def test_create_and_delete_folders_from_project_burst(
454454
client: httpx.AsyncClient,
455455
user_id: UserID,
456456
with_random_project_with_files: tuple[
457-
ProjectAtDB,
457+
dict[str, Any],
458458
dict[NodeID, dict[SimcoreS3FileID, dict[str, Path | str]]],
459459
],
460460
create_project: Callable[..., Awaitable[dict[str, Any]]],

0 commit comments

Comments
 (0)