mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-06-17 10:15:27 -04:00
test(gallery): point delete-ordering tests at the tmp image dir (#4300)
The two delete-ordering tests did monkeypatch.chdir(tmp_path) and wrote the image under tmp_path/data/generated_images, but DATA_DIR (and therefore gallery_routes.GALLERY_IMAGE_DIR) is always an absolute path, so the delete resolver pointed at the repo's real data dir and ignored the chdir. test_file_removed_on_successful_delete therefore failed on dev (the file at the tmp path was never the one being removed), and test_file_kept_when_commit_fails passed only by accident. Set GALLERY_IMAGE_DIR to the seeded tmp dir via monkeypatch so both tests exercise the real path and pass deterministically.
This commit is contained in:
@@ -41,8 +41,10 @@ def _seed(tmp_path):
|
|||||||
|
|
||||||
|
|
||||||
def test_file_kept_when_commit_fails(tmp_path, monkeypatch):
|
def test_file_kept_when_commit_fails(tmp_path, monkeypatch):
|
||||||
monkeypatch.chdir(tmp_path)
|
|
||||||
SessionLocal = _seed(tmp_path)
|
SessionLocal = _seed(tmp_path)
|
||||||
|
# GALLERY_IMAGE_DIR is an absolute path fixed at import, so a chdir can't
|
||||||
|
# redirect the delete; point the resolver at the seeded tmp dir directly.
|
||||||
|
monkeypatch.setattr(gallery_routes, "GALLERY_IMAGE_DIR", tmp_path / "data" / "generated_images")
|
||||||
monkeypatch.setattr(gallery_routes, "get_current_user", lambda r: "alice")
|
monkeypatch.setattr(gallery_routes, "get_current_user", lambda r: "alice")
|
||||||
|
|
||||||
# A session whose commit always fails, to simulate a DB error mid-delete.
|
# A session whose commit always fails, to simulate a DB error mid-delete.
|
||||||
@@ -67,8 +69,8 @@ def test_file_kept_when_commit_fails(tmp_path, monkeypatch):
|
|||||||
|
|
||||||
|
|
||||||
def test_file_removed_on_successful_delete(tmp_path, monkeypatch):
|
def test_file_removed_on_successful_delete(tmp_path, monkeypatch):
|
||||||
monkeypatch.chdir(tmp_path)
|
|
||||||
SessionLocal = _seed(tmp_path)
|
SessionLocal = _seed(tmp_path)
|
||||||
|
monkeypatch.setattr(gallery_routes, "GALLERY_IMAGE_DIR", tmp_path / "data" / "generated_images")
|
||||||
monkeypatch.setattr(gallery_routes, "get_current_user", lambda r: "alice")
|
monkeypatch.setattr(gallery_routes, "get_current_user", lambda r: "alice")
|
||||||
monkeypatch.setattr(gallery_routes, "SessionLocal", SessionLocal)
|
monkeypatch.setattr(gallery_routes, "SessionLocal", SessionLocal)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user