mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-08-03 05:18:22 +00:00
Behaviour-preserving lift-and-shift of the condition module out of legacy backend/condition/ into domain/condition, infrastructure/condition, infrastructure/postgres/condition_tables.py, repositories/condition, applications/condition, and tests/condition. Imports rewritten to the DDD paths; ConditionPostgres and the ORM models keep the legacy backend.app.db Base/db_session bridges so the existing suite proves behaviour is unchanged (SQLModel + session-DI conversion tracked as a follow-up in ADR-0064). 16 condition tests pass at the new location. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
30 lines
843 B
Python
30 lines
843 B
Python
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
|
|
|
|
|
|
def test_selects_lbwf_parser():
|
|
# arrange
|
|
file_type = ConditionFileType.LBWF
|
|
expected_class_name = "LbwfParser"
|
|
|
|
# act
|
|
actual_class_name = select_parser(file_type).__class__.__name__
|
|
|
|
# assert
|
|
assert expected_class_name == actual_class_name
|
|
|
|
|
|
def test_selects_peabody_parser():
|
|
# arrange
|
|
file_type = ConditionFileType.Peabody
|
|
expected_class_name = "PeabodyParser"
|
|
uprn_lookup = UprnLookupLocal(csv_path="test")
|
|
|
|
# act
|
|
actual_class_name = select_parser(file_type, uprn_lookup).__class__.__name__
|
|
|
|
# assert
|
|
assert expected_class_name == actual_class_name
|