diff --git a/backend/pashub_fetcher/core_files.py b/backend/pashub_fetcher/core_files.py index 3e69bf9a..050dde27 100644 --- a/backend/pashub_fetcher/core_files.py +++ b/backend/pashub_fetcher/core_files.py @@ -62,6 +62,12 @@ _MATCHERS: list[tuple[Callable[[str], bool], str]] = [ ] +def core_file_for( + filename: str, evidence_category: Optional[str] = None +) -> Optional[CoreFiles]: + raise NotImplementedError + + def infer_file_type(filename: str) -> Optional[str]: for matcher, file_type in _MATCHERS: if matcher(filename): diff --git a/backend/pashub_fetcher/tests/test_core_files.py b/backend/pashub_fetcher/tests/test_core_files.py index 8bd31f15..5ac6b4f7 100644 --- a/backend/pashub_fetcher/tests/test_core_files.py +++ b/backend/pashub_fetcher/tests/test_core_files.py @@ -1,4 +1,4 @@ -from backend.pashub_fetcher.core_files import infer_file_type +from backend.pashub_fetcher.core_files import CoreFiles, core_file_for, infer_file_type def test_infer_photopack(): @@ -81,3 +81,19 @@ def test_infer_retrofit_design_doc(): infer_file_type("2603-OSM-B06M901-XX-DR-N-A_Alvaston Walk 022.pdf") == "retrofit_design_doc" ) + + +# --------------------------------------------------------------------------- +# core_file_for +# --------------------------------------------------------------------------- + + +def test_core_file_for_evidence_category_returns_retrofit_design_doc() -> None: + # Arrange + filename = "2512-OSM-H21M900-XX-DR-N-A_Lord Nelson Street 018.pdf" + + # Act + result = core_file_for(filename, evidence_category="retrofit design") + + # Assert + assert result == CoreFiles.RETROFIT_DESIGN_DOC