_select_latest_core_files delegates to core_file_for; _get_core_file_type removed 🟪

This commit is contained in:
Daniel Roth 2026-05-14 08:53:56 +00:00
parent 5e31c0f3da
commit fb9bdbc585
2 changed files with 2 additions and 103 deletions

View file

@ -5,7 +5,7 @@ from datetime import datetime
import requests
from backend.pashub_fetcher.core_files import CoreFiles
from backend.pashub_fetcher.core_files import CoreFiles, core_file_for
from backend.pashub_fetcher.evidence_file_data import EvidenceFileData
from backend.pashub_fetcher.evidence_metadata import EvidenceMetadata
from utils.logger import setup_logger
@ -86,24 +86,6 @@ class PashubClient:
except Exception:
return None
def _get_core_file_type(self, file: EvidenceFileData) -> Optional[CoreFiles]:
if file.evidence_category is not None and file.evidence_category.lower() == "retrofit design":
return CoreFiles.RETROFIT_DESIGN_DOC
for core_file in (
CoreFiles.IMPROVEMENT_OPTION_EVALUATION,
CoreFiles.MEDIUM_TERM_IMPROVEMENT_PLAN,
):
if core_file.value in file.file_name:
return core_file
for core_file in CoreFiles:
if core_file is CoreFiles.RETROFIT_DESIGN_DOC:
continue
if file.file_name.startswith(core_file.value):
return core_file
return None
def _select_latest_core_files(
self,
files: List[EvidenceFileData],
@ -111,7 +93,7 @@ class PashubClient:
grouped: Dict[CoreFiles, List[EvidenceFileData]] = defaultdict(list)
for file in files:
core_type = self._get_core_file_type(file)
core_type = core_file_for(file.file_name, file.evidence_category)
if not core_type:
continue
grouped[core_type].append(file)

View file

@ -25,89 +25,6 @@ def make_file(
)
# ---------------------------------------------------------------------------
# _get_core_file_type
# ---------------------------------------------------------------------------
def test_get_core_file_type_returns_retrofit_design_doc_for_evidence_category() -> None:
# Arrange
client = make_client()
file = make_file(
file_name="2512-OSM-H21M900-XX-DR-N-A_Lord Nelson Street 018.pdf",
evidence_category="retrofit design",
)
# Act
result = client._get_core_file_type(file)
# Assert
assert result == CoreFiles.RETROFIT_DESIGN_DOC
def test_get_core_file_type_evidence_category_match_is_case_insensitive() -> None:
# Arrange
client = make_client()
file = make_file(
file_name="2512-OSM-H21M900-XX-DR-N-A_Lord Nelson Street 018.pdf",
evidence_category="Retrofit Design",
)
# Act
result = client._get_core_file_type(file)
# Assert
assert result == CoreFiles.RETROFIT_DESIGN_DOC
def test_get_core_file_type_returns_improvement_option_evaluation_via_substring() -> None:
# Arrange
client = make_client()
file = make_file(file_name="6000802 - NG4 4HD - Improvement Option Evaluation.pdf")
# Act
result = client._get_core_file_type(file)
# Assert
assert result == CoreFiles.IMPROVEMENT_OPTION_EVALUATION
def test_get_core_file_type_returns_medium_term_improvement_plan_via_substring() -> None:
# Arrange
client = make_client()
file = make_file(file_name="60800802 - NG4 4HD - Medium Term Improvement Plan IOE.pdf")
# Act
result = client._get_core_file_type(file)
# Assert
assert result == CoreFiles.MEDIUM_TERM_IMPROVEMENT_PLAN
def test_get_core_file_type_returns_photopack_via_prefix() -> None:
# Arrange
client = make_client()
file = make_file(file_name="Photopack_123456_V1.pdf")
# Act
result = client._get_core_file_type(file)
# Assert
assert result == CoreFiles.PHOTOPACK
def test_get_core_file_type_returns_none_for_unknown_file() -> None:
# Arrange
client = make_client()
file = make_file(file_name="unknown_document_123.pdf")
# Act
result = client._get_core_file_type(file)
# Assert
assert result is None
# ---------------------------------------------------------------------------
# _select_latest_core_files
# ---------------------------------------------------------------------------