Skip to content

Commit 9bf09ba

Browse files
committed
UserAlert wip
1 parent e7a71fb commit 9bf09ba

File tree

2 files changed

+31
-2
lines changed

2 files changed

+31
-2
lines changed

simvue/api/objects/alert/user.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,8 @@ def get_status(self, run_id: str) -> typing.Literal["ok", "critical"] | None:
8383

8484
def on_reconnect(self, id_mapping: dict[str, str]) -> None:
8585
"""Set status update on reconnect"""
86-
for run_id, status in self._staging.get("status", self._local_status).items():
87-
self.set_status(run_id, status)
86+
for offline_id, status in self._staging.get("status", {}).items():
87+
self.set_status(id_mapping.get(offline_id), status)
8888

8989
@pydantic.validate_call
9090
def set_status(self, run_id: str, status: typing.Literal["ok", "critical"]) -> None:

tests/unit/test_user_alert.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,4 +172,33 @@ def test_user_alert_status() -> None:
172172
_run.delete()
173173
_folder.delete(recursive=True, runs_only=False, delete_runs=True)
174174
_alert.delete()
175+
176+
177+
@pytest.mark.api
178+
@pytest.mark.offline
179+
def test_user_alert_status_offline() -> None:
180+
_uuid: str = f"{uuid.uuid4()}".split("-")[0]
181+
_alert = UserAlert.new(
182+
name=f"users_alert_{_uuid}",
183+
notification="none",
184+
description=None,
185+
offline=True
186+
)
187+
_alert.commit()
188+
_folder = Folder.new(path=f"/simvue_unit_tests/{_uuid}", offline=True)
189+
_run = Run.new(folder=f"/simvue_unit_tests/{_uuid}", offline=True)
190+
_folder.commit()
191+
_run.alerts = [_alert.id]
192+
_run.commit()
193+
194+
sender(_alert._local_staging_file.parents[1], 1, 10, ["folders", "runs", "alerts"])
195+
time.sleep(1)
196+
197+
_alert.set_status(_run.id, "critical")
198+
_alert.commit()
199+
import pdb; pdb.set_trace()
200+
time.sleep(1)
201+
_run.delete()
202+
_folder.delete(recursive=True, runs_only=False, delete_runs=True)
203+
_alert.delete()
175204

0 commit comments

Comments
 (0)