From 0023ca2fba85d1abd00941a4b4e259efa7f73ff3 Mon Sep 17 00:00:00 2001 From: Gautzilla Date: Wed, 4 Feb 2026 15:00:28 +0100 Subject: [PATCH 1/2] update jub status after submit --- src/osekit/utils/job.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/osekit/utils/job.py b/src/osekit/utils/job.py index 2d2e19df..c9885275 100644 --- a/src/osekit/utils/job.py +++ b/src/osekit/utils/job.py @@ -352,7 +352,7 @@ def submit_pbs( raise RuntimeError(msg) from e self.job_id = request.stdout.split(".", maxsplit=1)[0].strip() - self.progress() + self.update_status() _VALID_DEPENDENCY_TYPES = {"afterok", "afterany", "afternotok", "after"} From ea7ef04f43f282fae6d966eb5e18644b61844553 Mon Sep 17 00:00:00 2001 From: Gautzilla Date: Wed, 4 Feb 2026 15:24:55 +0100 Subject: [PATCH 2/2] adapt job tests --- tests/test_job.py | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/tests/test_job.py b/tests/test_job.py index 8a81cce7..6597c288 100644 --- a/tests/test_job.py +++ b/tests/test_job.py @@ -4,6 +4,7 @@ from contextlib import nullcontext from pathlib import Path +import numpy as np import pytest from pandas import Timedelta @@ -180,11 +181,22 @@ def __init__(self) -> None: lambda *args, **kwargs: Dummy(), ) + updated_jobs = [] + + def mock_update_status(self: Job) -> JobStatus: + updated_jobs.append(job) + return JobStatus.PREPARED + + monkeypatch.setattr(Job, "update_status", mock_update_status) + assert job.status == JobStatus.PREPARED job.submit_pbs() assert job.job_id == "35173" - assert job.status == JobStatus.QUEUED + assert np.array_equal( + updated_jobs, + [job] * 2, + ) # Call before and after submitting the job def test_submit_pbs_errors(tmp_path: Path, monkeypatch: pytest.MonkeyPatch) -> None: @@ -581,7 +593,10 @@ def test_build_dependency_string_with_string_input( assert Job._build_dependency_string(dependency) == e -def test_submit_pbs_adds_dependency_flag(tmp_path, monkeypatch): +def test_submit_pbs_adds_dependency_flag( + tmp_path: Path, + monkeypatch: pytest.MonkeyPatch, +) -> None: script = tmp_path / "script.py" script.write_text("") job = Job(script, name="crazy_diamond", output_folder=tmp_path) @@ -593,11 +608,12 @@ class Dummy: stdout = "1234567.server\n" stderr = "" - def fake_run(cmd, *args, **kwargs): + def fake_run(cmd: list[str], *args: None, **kwargs: None) -> Dummy: captured_cmd["cmd"] = cmd return Dummy() monkeypatch.setattr(subprocess, "run", fake_run) + monkeypatch.setattr(Job, "update_status", lambda _: JobStatus.PREPARED) job.submit_pbs(dependency="1234567")