From 2fb6a99956822f48f2d5ec2654c692d55c26ee68 Mon Sep 17 00:00:00 2001 From: Jun-te Kim Date: Wed, 13 May 2026 14:02:36 +0000 Subject: [PATCH] throttle added --- backend/address2UPRN/tests/test_csv.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/backend/address2UPRN/tests/test_csv.py b/backend/address2UPRN/tests/test_csv.py index 70e7a9f9..73d94388 100644 --- a/backend/address2UPRN/tests/test_csv.py +++ b/backend/address2UPRN/tests/test_csv.py @@ -1,12 +1,24 @@ # tests/test_address_to_uprn_csv.py import csv +import time import pytest from pathlib import Path from backend.address2UPRN.main import get_uprn FIXTURE_PATH = Path(__file__).parent / "test_data.csv" +# Delay between live EPC API calls to stay under the (undocumented) rate limit. +# Each parametrized case fires at least one EPC request; without throttling, +# GitHub-hosted runners burst fast enough to hit 429s. +EPC_THROTTLE_SECONDS = 1.0 + + +@pytest.fixture(autouse=True) +def _throttle_epc_requests(): + yield + time.sleep(EPC_THROTTLE_SECONDS) + def load_test_cases(): with open(FIXTURE_PATH, newline="", encoding="utf-8") as f: