24 lines
843 B
Python
24 lines
843 B
Python
import json
|
|
|
|
from src.personal_docs import PersonalDocsManager
|
|
|
|
|
|
def test_manager_ignores_invalid_persisted_state_shapes(tmp_path):
|
|
(tmp_path / "indexed_directories.json").write_text(json.dumps({"bad": "shape"}))
|
|
(tmp_path / "excluded_files.json").write_text(json.dumps({"bad": "shape"}))
|
|
|
|
manager = PersonalDocsManager(str(tmp_path))
|
|
|
|
assert manager.indexed_directories == []
|
|
assert manager.excluded_files == set()
|
|
|
|
|
|
def test_manager_filters_invalid_persisted_state_rows(tmp_path):
|
|
(tmp_path / "indexed_directories.json").write_text(json.dumps(["/tmp/docs", 123]))
|
|
(tmp_path / "excluded_files.json").write_text(json.dumps(["/tmp/docs/a.txt", None]))
|
|
|
|
manager = PersonalDocsManager(str(tmp_path))
|
|
|
|
assert manager.indexed_directories == ["/tmp/docs"]
|
|
assert manager.excluded_files == {"/tmp/docs/a.txt"}
|