Skip to content

Enabling widget testing and deprecated testing old widgets #195

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Feb 19, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ deps =
pyqt5
git+https://github.com/hadim/pytrackmate.git
commands =
pytest -v --color=yes --cov=ultrack --cov-report=xml --durations=15 --ignore=ultrack/widgets
pytest -v --color=yes --cov=ultrack --cov-report=xml --durations=15

[testenv:lint]
description = Runs all linting tasks
Expand Down
4 changes: 2 additions & 2 deletions ultrack/api/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ async def start_experiment(ws: WebSocket, exp: Experiment) -> None:
update_experiment(exp)
await app.state.queue.join()
await app.state.queue.put(exp)
await ws.send_json(json.loads(exp.json()))
await ws.send_json(json.loads(exp.model_dump_json()))
UltrackWebsocketLogger.register_interruption_handler(exp.id)
exp.status = ExperimentStatus.INITIALIZING
update_experiment(exp)
Expand All @@ -157,7 +157,7 @@ async def finish_experiment(ws: WebSocket, exp: Experiment) -> Experiment:
app.state.queue.task_done()
if ws.client_state == WebSocketState.CONNECTED:
# send the final state
await ws.send_json(json.loads(exp.json()))
await ws.send_json(json.loads(exp.model_dump_json()))
return exp


Expand Down
2 changes: 1 addition & 1 deletion ultrack/api/utils/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ async def run_thread():
experiment.err_log = _mimic_carriage_return(self.stderr.getvalue())
if websocket.state == WebSocketState.DISCONNECTED:
return False
await websocket.send_json(json.loads(experiment.json()))
await websocket.send_json(json.loads(experiment.model_dump_json()))
return True

def between_callback(stop_logger_event: threading.Event):
Expand Down
2 changes: 1 addition & 1 deletion ultrack/core/gt_matching.py
Original file line number Diff line number Diff line change
Expand Up @@ -291,7 +291,7 @@ def match_to_ground_truth(
return df_nodes

# optimize configuration
opt_config = config.copy(deep=True)
opt_config = config.model_copy(deep=True)
gt_df = df_nodes[df_nodes["gt_track_id"] > 0]

if len(gt_df) == 0:
Expand Down
2 changes: 2 additions & 0 deletions ultrack/widgets/_test/test_division_annotation_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
from ultrack.core.database import NodeDB, VarAnnotation
from ultrack.widgets import DivisionAnnotationWidget

pytest.skip(reason="DEPRECATED", allow_module_level=True)


@pytest.mark.parametrize(
"config_content",
Expand Down
2 changes: 2 additions & 0 deletions ultrack/widgets/_test/test_hypotheses_viz_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
from ultrack.core.segmentation.node import Node
from ultrack.widgets import HypothesesVizWidget

pytest.skip(reason="DEPRECATED", allow_module_level=True)


def _is_sorted(nodes: Dict[int, Node]) -> bool:
nodes = list(nodes.values())
Expand Down
4 changes: 3 additions & 1 deletion ultrack/widgets/_test/test_labels_to_edges_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,12 @@

import napari
import numpy as np
import pytest

from ultrack.utils._test.test_edge import multiple_labels # noqa: F401
from ultrack.widgets import LabelsToContoursWidget

pytest.skip(reason="DEPRECATED", allow_module_level=True)


def test_labels_to_contours_widget(
make_napari_viewer: Callable[[], napari.Viewer],
Expand Down
3 changes: 3 additions & 0 deletions ultrack/widgets/_test/test_node_annotation_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
from typing import Callable, Tuple

import napari
import pytest
import zarr
from sqlalchemy import create_engine
from sqlalchemy.orm import Session
Expand All @@ -10,6 +11,8 @@
from ultrack.core.database import NodeDB, NodeSegmAnnotation
from ultrack.widgets import NodeAnnotationWidget

pytest.skip(reason="DEPRECATED", allow_module_level=True)


def test_node_annotation_widget(
make_napari_viewer: Callable[[], napari.Viewer],
Expand Down
2 changes: 2 additions & 0 deletions ultrack/widgets/_test/test_track_inspection_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
from ultrack.config import MainConfig
from ultrack.widgets import TrackInspectionWidget

pytest.skip(reason="DEPRECATED", allow_module_level=True)


@pytest.mark.parametrize(
"config_content,timelapse_mock_data",
Expand Down
3 changes: 3 additions & 0 deletions ultrack/widgets/ultrackwidget/_legacy/_test/test_widgets.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,13 @@

import higra as hg
import napari
import pytest

from ultrack.config import MainConfig
from ultrack.widgets.ultrackwidget import UltrackWidget

pytest.skip(reason="DEPRECATED", allow_module_level=True)


def test_ultrack_widget(
make_napari_viewer: Callable[[], napari.Viewer],
Expand Down
2 changes: 1 addition & 1 deletion ultrack/widgets/ultrackwidget/data_forms.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
QWidget,
)

from ultrack.config import CFG_ALIAS_TO_ATTR, MainConfig
from ultrack.config.config import CFG_ALIAS_TO_ATTR, MainConfig
from ultrack.widgets.ultrackwidget.components.blankable_number_edit import (
BlankableNumberEdit,
)
Expand Down