diff --git a/app/main/views/dashboard.py b/app/main/views/dashboard.py index 9091a2036..45736ac1e 100644 --- a/app/main/views/dashboard.py +++ b/app/main/views/dashboard.py @@ -190,7 +190,7 @@ def get_dashboard_partials(service_id): **calculate_free_tier_usage(service_api_client.get_yearly_sms_unit_count_and_cost( service_id, get_current_financial_year(), - )) + ), service) ), } @@ -202,9 +202,8 @@ def get_dashboard_totals(statistics): return statistics -def calculate_free_tier_usage(usage): - sms_free_allowance = current_app.config['SMS_FREE_TIER_AMOUNT'] - +def calculate_free_tier_usage(usage, service): + sms_free_allowance = service['data']['free_sms_fragment_limit'] return({ 'sms_chargeable': max(0, usage['billable_sms_units'] - sms_free_allowance), 'total_sms_bill': usage['billable_sms_units'], diff --git a/tests/conftest.py b/tests/conftest.py index 29a1969f8..2aa63a34b 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -92,6 +92,7 @@ def mock_get_detailed_service(mocker, api_user_active): return { 'data': { 'id': service_id, + 'free_sms_fragment_limit': 250000, 'statistics': { 'email': {'requested': 0, 'delivered': 0, 'failed': 0}, 'sms': {'requested': 0, 'delivered': 0, 'failed': 0} @@ -109,6 +110,7 @@ def mock_get_detailed_service_for_today(mocker, api_user_active): return { 'data': { 'id': service_id, + 'free_sms_fragment_limit': 250000, 'statistics': { 'email': {'requested': 0, 'delivered': 0, 'failed': 0}, 'sms': {'requested': 0, 'delivered': 0, 'failed': 0}