Files
web-page-backend/music-lab/tests/test_pipeline_retry.py
2026-06-12 00:18:07 +09:00

25 lines
744 B
Python

import pytest
from app import db
@pytest.fixture
def fresh_db(monkeypatch, tmp_path):
db_path = tmp_path / "music.db"
monkeypatch.setattr(db, "DB_PATH", str(db_path))
db.init_db()
return db_path
def test_get_last_failed_step_returns_step(fresh_db):
pid = db.create_pipeline(track_id=1)
job_id = db.create_pipeline_job(pid, "video")
db.update_pipeline_job(job_id, status="failed", error="boom")
db.update_pipeline_state(pid, "failed", failed_reason="video: boom")
assert db.get_last_failed_step(pid) == "video"
def test_get_last_failed_step_none_when_no_failure(fresh_db):
pid = db.create_pipeline(track_id=1)
db.create_pipeline_job(pid, "cover")
assert db.get_last_failed_step(pid) is None