From c7cfcc127d8f02d1bf0ea26322a51631927659e7 Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Wed, 25 Feb 2026 14:28:52 +0100 Subject: [PATCH 1/3] fix(FileSystem): remove input_file & additional_files persistance in SQLAlchemy --- src/opengeodeweb_microservice/database/data.py | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/opengeodeweb_microservice/database/data.py b/src/opengeodeweb_microservice/database/data.py index 7e65640..afb70bc 100644 --- a/src/opengeodeweb_microservice/database/data.py +++ b/src/opengeodeweb_microservice/database/data.py @@ -14,28 +14,20 @@ class Data(Base): geode_object: Mapped[str] = mapped_column(String, nullable=False) viewer_object: Mapped[str] = mapped_column(String, nullable=False) viewer_elements_type: Mapped[str] = mapped_column(String, nullable=False) - native_file: Mapped[str | None] = mapped_column(String, nullable=True) viewable_file: Mapped[str | None] = mapped_column(String, nullable=True) - light_viewable_file: Mapped[str | None] = mapped_column(String, nullable=True) - input_file: Mapped[str | None] = mapped_column(String, nullable=True) - additional_files: Mapped[list[str] | None] = mapped_column(JSON, nullable=True) @staticmethod def create( geode_object: str, viewer_object: str, viewer_elements_type: str, - input_file: str | None = None, - additional_files: list[str] | None = None, ) -> "Data": data_entry = Data( geode_object=geode_object, viewer_object=viewer_object, viewer_elements_type=viewer_elements_type, - input_file=input_file, - additional_files=additional_files, ) session = get_session() From 0979fbb4eac1cad1af854672e271bdfcd03ac65a Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Wed, 25 Feb 2026 14:50:51 +0100 Subject: [PATCH 2/3] update test + add newtest with workflow --- tests/test_database.py | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/tests/test_database.py b/tests/test_database.py index 05ce69c..8d89f71 100644 --- a/tests/test_database.py +++ b/tests/test_database.py @@ -1,4 +1,5 @@ from opengeodeweb_microservice.database.data import Data +from opengeodeweb_microservice.database.connection import get_session def test_data_crud_operations(clean_database: None) -> None: @@ -6,8 +7,6 @@ def test_data_crud_operations(clean_database: None) -> None: geode_object="test_object", viewer_object="test_viewer", viewer_elements_type="test_type", - input_file="test.txt", - additional_files=[], ) print("id", data.id, flush=True) assert data.id is not None @@ -17,25 +16,29 @@ def test_data_crud_operations(clean_database: None) -> None: assert retrieved is not None assert isinstance(retrieved, Data) assert retrieved.geode_object == "test_object" - assert retrieved.input_file == "test.txt" assert retrieved.id == data.id non_existent = Data.get("fake_id") assert non_existent is None -def test_data_with_additional_files(clean_database: None) -> None: - files = ["file1.txt", "file2.txt"] +def test_data_with_file_assignments(clean_database: None) -> None: data = Data.create( - geode_object="test_files", - viewer_object="test_viewer", + geode_object="geode_object", + viewer_object="viewer_object", viewer_elements_type="test_type", - additional_files=files, ) - assert data.id is not None - assert isinstance(data.id, str) + data_id = data.id + data.native_file = "original.og_brep" + data.viewable_file = "viewable.vtm" + data.light_viewable_file = "light.vtp" - retrieved = Data.get(data.id) + with get_session() as session: + session.add(data) + session.commit() + + retrieved = Data.get(data_id) assert retrieved is not None - assert isinstance(retrieved, Data) - assert retrieved.additional_files == files - assert retrieved.geode_object == "test_files" + assert retrieved.native_file == "original.og_brep" + assert retrieved.viewable_file == "viewable.vtm" + assert retrieved.light_viewable_file == "light.vtp" + assert retrieved.geode_object == "geode_object" From 3ee67b2afa3f4a7a51c7ac1bea13eef30adcb9d8 Mon Sep 17 00:00:00 2001 From: MaxNumerique Date: Wed, 25 Feb 2026 15:02:05 +0100 Subject: [PATCH 3/3] native. --- tests/test_database.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/test_database.py b/tests/test_database.py index 8d89f71..487ddb5 100644 --- a/tests/test_database.py +++ b/tests/test_database.py @@ -28,7 +28,7 @@ def test_data_with_file_assignments(clean_database: None) -> None: viewer_elements_type="test_type", ) data_id = data.id - data.native_file = "original.og_brep" + data.native_file = "native.og_brep" data.viewable_file = "viewable.vtm" data.light_viewable_file = "light.vtp" @@ -38,7 +38,7 @@ def test_data_with_file_assignments(clean_database: None) -> None: retrieved = Data.get(data_id) assert retrieved is not None - assert retrieved.native_file == "original.og_brep" + assert retrieved.native_file == "native.og_brep" assert retrieved.viewable_file == "viewable.vtm" assert retrieved.light_viewable_file == "light.vtp" assert retrieved.geode_object == "geode_object"