diff --git a/repositories/historic_epc/historic_epc_s3_repository.py b/repositories/historic_epc/historic_epc_s3_repository.py index bc2d5dcca..ce735802e 100644 --- a/repositories/historic_epc/historic_epc_s3_repository.py +++ b/repositories/historic_epc/historic_epc_s3_repository.py @@ -10,7 +10,10 @@ from datatypes.epc.domain.historic_epc_matching import ( _map_historic_epc_pandas_row_to_domain, _sanitise_postcode, ) -from repositories.historic_epc.historic_epc_repository import HistoricEpcRepository +from repositories.historic_epc.historic_epc_repository import ( + HistoricEpcRepository, + PostcodeNotFound, +) from utils.s3 import parse_s3_uri, read_csv_gz_from_s3 DEFAULT_S3_ROOT = "s3://retrofit-data-dev/historical_epc" @@ -33,7 +36,10 @@ class HistoricEpcS3Repository(HistoricEpcRepository): self._s3_root = s3_root def get_for_postcode(self, postcode: str) -> list[HistoricEpc]: - pc = _sanitise_postcode(postcode) + try: + pc = _sanitise_postcode(postcode) + except ValueError as e: + raise PostcodeNotFound(str(e)) from e bucket, root_prefix = parse_s3_uri(self._s3_root) key = f"{root_prefix.rstrip('/')}/{pc}/data.csv.gz" try: