Allow heading tags (h1-h6) in ContentSanitizer so news editor headings render
This commit is contained in:
61
services/enhance-worker/tests/test_realesrgan_config.py
Normal file
61
services/enhance-worker/tests/test_realesrgan_config.py
Normal file
@@ -0,0 +1,61 @@
|
||||
from pathlib import Path
|
||||
|
||||
from fastapi.testclient import TestClient
|
||||
|
||||
from app.config import Settings
|
||||
from app.main import create_app
|
||||
|
||||
|
||||
def test_health_reports_degraded_when_realesrgan_binary_is_missing(tmp_path: Path) -> None:
|
||||
settings = Settings(
|
||||
engine="realesrgan-ncnn",
|
||||
device="vulkan",
|
||||
token="secret-token",
|
||||
tmp_dir=str(tmp_path / "tmp"),
|
||||
output_dir=str(tmp_path / "output"),
|
||||
realesrgan_bin=str(tmp_path / "bin" / "realesrgan-ncnn-vulkan"),
|
||||
realesrgan_model_dir=str(tmp_path / "models"),
|
||||
)
|
||||
(tmp_path / "models").mkdir(parents=True)
|
||||
|
||||
client = TestClient(create_app(settings))
|
||||
response = client.get("/health")
|
||||
|
||||
assert response.status_code == 200
|
||||
payload = response.json()
|
||||
assert payload["status"] == "degraded"
|
||||
assert payload["engine"] == "realesrgan-ncnn"
|
||||
assert payload["realesrgan"]["binary_exists"] is False
|
||||
assert payload["realesrgan"]["available_models"] == []
|
||||
|
||||
|
||||
def test_health_reports_available_models_for_realesrgan(tmp_path: Path) -> None:
|
||||
binary = tmp_path / "bin" / "realesrgan-ncnn-vulkan"
|
||||
binary.parent.mkdir(parents=True)
|
||||
binary.write_text("#!/bin/sh\nexit 0\n", encoding="utf-8")
|
||||
binary.chmod(0o755)
|
||||
|
||||
model_dir = tmp_path / "models"
|
||||
model_dir.mkdir(parents=True)
|
||||
for name in ("realesrgan-x4plus", "realesrgan-x4plus-anime"):
|
||||
(model_dir / f"{name}.param").write_text("param", encoding="utf-8")
|
||||
(model_dir / f"{name}.bin").write_text("bin", encoding="utf-8")
|
||||
|
||||
settings = Settings(
|
||||
engine="realesrgan-ncnn",
|
||||
device="vulkan",
|
||||
token="secret-token",
|
||||
tmp_dir=str(tmp_path / "tmp"),
|
||||
output_dir=str(tmp_path / "output"),
|
||||
realesrgan_bin=str(binary),
|
||||
realesrgan_model_dir=str(model_dir),
|
||||
)
|
||||
|
||||
client = TestClient(create_app(settings))
|
||||
response = client.get("/health")
|
||||
|
||||
assert response.status_code == 200
|
||||
payload = response.json()
|
||||
assert payload["status"] == "ok"
|
||||
assert payload["models_loaded"] is True
|
||||
assert payload["realesrgan"]["available_models"] == ["realesrgan-x4plus", "realesrgan-x4plus-anime"]
|
||||
Reference in New Issue
Block a user