mirror of
https://github.com/GSA/notifications-api.git
synced 2026-05-05 08:40:29 -04:00
Refactor test and fixture for getting billing report data
Names of services and orgs were confusing, and variable setting was done in a way that made it easy to introduce errors. Now hopefully it is more readable and more error-proof.
This commit is contained in:
@@ -127,14 +127,13 @@ def test_validate_date_is_within_a_financial_year_when_input_is_not_a_date(start
|
||||
|
||||
|
||||
def test_get_usage_for_all_services(notify_db_session, admin_request):
|
||||
org, org_3, service, service_3, service_without_org, service_sms_only, \
|
||||
org_with_emails, service_with_emails = set_up_usage_data(datetime(2019, 5, 1))
|
||||
setup = set_up_usage_data(datetime(2019, 5, 1))
|
||||
response = admin_request.get("platform_stats.get_usage_for_all_services",
|
||||
start_date='2019-05-01',
|
||||
end_date='2019-06-30')
|
||||
assert len(response) == 4
|
||||
assert response[0]["organisation_id"] == str(org.id)
|
||||
assert response[0]["service_id"] == str(service.id)
|
||||
assert response[0]["organisation_id"] == str(setup["org_1"].id)
|
||||
assert response[0]["service_id"] == str(setup["service_1_sms_and_letter"].id)
|
||||
assert response[0]["sms_cost"] == 0
|
||||
assert response[0]["sms_fragments"] == 0
|
||||
assert response[0]["letter_cost"] == 3.40
|
||||
@@ -144,8 +143,8 @@ def test_get_usage_for_all_services(notify_db_session, admin_request):
|
||||
assert response[0]["contact_email_addresses"] == "service@billing.contact email@addresses.gov.uk"
|
||||
assert response[0]["billing_reference"] == "service billing reference"
|
||||
|
||||
assert response[1]["organisation_id"] == str(org_3.id)
|
||||
assert response[1]["service_id"] == str(service_3.id)
|
||||
assert response[1]["organisation_id"] == str(setup["org_for_service_with_letters"].id)
|
||||
assert response[1]["service_id"] == str(setup["service_with_letters"].id)
|
||||
assert response[1]["sms_cost"] == 0
|
||||
assert response[1]["sms_fragments"] == 0
|
||||
assert response[1]["letter_cost"] == 14
|
||||
@@ -156,7 +155,7 @@ def test_get_usage_for_all_services(notify_db_session, admin_request):
|
||||
assert response[1]["billing_reference"] == "org3 billing reference"
|
||||
|
||||
assert response[2]["organisation_id"] == ""
|
||||
assert response[2]["service_id"] == str(service_sms_only.id)
|
||||
assert response[2]["service_id"] == str(setup["service_with_sms_without_org"].id)
|
||||
assert response[2]["sms_cost"] == 0.33
|
||||
assert response[2]["sms_fragments"] == 3
|
||||
assert response[2]["letter_cost"] == 0
|
||||
@@ -167,10 +166,11 @@ def test_get_usage_for_all_services(notify_db_session, admin_request):
|
||||
assert response[2]["billing_reference"] == "sms billing reference"
|
||||
|
||||
assert response[3]["organisation_id"] == ""
|
||||
assert response[3]["service_id"] == str(service_without_org.id)
|
||||
assert response[3]["service_id"] == str(setup["service_with_letters_without_org"].id)
|
||||
assert response[3]["sms_cost"] == 0
|
||||
assert response[3]["sms_fragments"] == 0
|
||||
assert response[3]["letter_cost"] == 24.45
|
||||
assert response[3]["letter_breakdown"] == (
|
||||
"2 second class letters at 35p\n1 first class letters at 50p\n15 international letters at £1.55\n"
|
||||
)
|
||||
assert response[3]["purchase_order_number"] is None
|
||||
|
||||
Reference in New Issue
Block a user