diff --git a/applications/condition/condition_trigger_request.py b/applications/condition/condition_trigger_request.py index daa82949c..04fdc03bc 100644 --- a/applications/condition/condition_trigger_request.py +++ b/applications/condition/condition_trigger_request.py @@ -6,6 +6,7 @@ from pydantic import BaseModel class ConditionFileType(Enum): LBWF = "LBWF" Peabody = "Peabody" + Calico = "Calico" # TODO: make these asset management systems rather than client names diff --git a/tests/condition/parsing/test_parsing_factory.py b/tests/condition/parsing/test_parsing_factory.py index f472f8c58..8b775fa25 100644 --- a/tests/condition/parsing/test_parsing_factory.py +++ b/tests/condition/parsing/test_parsing_factory.py @@ -2,7 +2,7 @@ import pytest from applications.condition.condition_trigger_request import ConditionFileType from infrastructure.condition.lookups.uprn_lookup_csv import UprnLookupLocal -from applications.condition.factory import select_parser +from applications.condition.factory import select_parser, select_mapper def test_selects_lbwf_parser(): @@ -28,3 +28,24 @@ def test_selects_peabody_parser(): # assert assert expected_class_name == actual_class_name + + +def test_selects_calico_parser(): + # arrange + uprn_lookup = UprnLookupLocal(csv_path="test") + + # act + actual_class_name = select_parser( + ConditionFileType.Calico, uprn_lookup + ).__class__.__name__ + + # assert + assert actual_class_name == "CalicoParser" + + +def test_selects_calico_mapper(): + # act + actual_class_name = select_mapper(ConditionFileType.Calico).__class__.__name__ + + # assert + assert actual_class_name == "CalicoMapper"