fix: surface missing knowledge files
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
from pathlib import Path
|
||||
from types import SimpleNamespace
|
||||
from unittest.mock import patch
|
||||
|
||||
from routers.knowledge import _doc_payload
|
||||
|
||||
|
||||
def test_doc_payload_reports_whether_the_persisted_file_exists(tmp_path: Path):
|
||||
avatar_id = "avatar-1"
|
||||
stored_name = "knowledge.md"
|
||||
doc = SimpleNamespace(
|
||||
avatar_id=avatar_id,
|
||||
file_url=f"/api/files/{avatar_id}/{stored_name}",
|
||||
to_dict=lambda: {"id": "doc-1", "fileUrl": f"/api/files/{avatar_id}/{stored_name}"},
|
||||
)
|
||||
stored_dir = tmp_path / avatar_id
|
||||
stored_dir.mkdir()
|
||||
stored_file = stored_dir / stored_name
|
||||
|
||||
with patch("routers.knowledge.UPLOAD_DIR", str(tmp_path)):
|
||||
assert _doc_payload(doc)["filePresent"] is False
|
||||
stored_file.write_text("knowledge", encoding="utf-8")
|
||||
assert _doc_payload(doc)["filePresent"] is True
|
||||
Reference in New Issue
Block a user