From b685008e5ee1816588dedc096866a63764fc9c2a Mon Sep 17 00:00:00 2001 From: Daniel Roth Date: Wed, 13 May 2026 16:28:19 +0000 Subject: [PATCH] =?UTF-8?q?OSM=20candidate=20wins=20over=20non-OSM=20retro?= =?UTF-8?q?fit=20design=20doc=20=F0=9F=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tests/test_pashub_client.py | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/backend/pashub_fetcher/tests/test_pashub_client.py b/backend/pashub_fetcher/tests/test_pashub_client.py index 334f2de0..646ff3bc 100644 --- a/backend/pashub_fetcher/tests/test_pashub_client.py +++ b/backend/pashub_fetcher/tests/test_pashub_client.py @@ -116,6 +116,29 @@ def test_select_latest_core_files_returns_single_retrofit_design_doc() -> None: assert result[CoreFiles.RETROFIT_DESIGN_DOC].file_name == "2512-OSM-H21M900-XX-DR-N-A_Lord Nelson Street 018.pdf" +def test_select_latest_core_files_osm_candidate_wins_over_non_osm() -> None: + # Arrange - the non-OSM file is newer but should lose to the OSM file + client = make_client() + files = [ + make_file( + file_name="2512-OSM-H21M900-XX-DR-N-A_Lord Nelson Street 018.pdf", + evidence_category="retrofit design", + created_utc="2024-01-01T00:00:00", + ), + make_file( + file_name="Retrofit Design Doc non-osm variant.pdf", + evidence_category="retrofit design", + created_utc="2024-06-01T00:00:00", + ), + ] + + # Act + result = client._select_latest_core_files(files) + + # Assert + assert result[CoreFiles.RETROFIT_DESIGN_DOC].file_name == "2512-OSM-H21M900-XX-DR-N-A_Lord Nelson Street 018.pdf" + + def test_get_core_file_type_evidence_category_match_is_case_insensitive() -> None: # Arrange client = make_client()