def test_format_stats_by_service_returns_correct_values(fake_uuid): services = [service_json(fake_uuid, 'a', [])] services[0]['statistics'] = create_stats( emails_requested=10, emails_delivered=3, emails_failed=5, sms_requested=50, sms_delivered=7, sms_failed=11, letters_requested=40, letters_delivered=20, letters_failed=7 ) ret = list(format_stats_by_service(services)) assert len(ret) == 1 assert ret[0]['stats']['email']['requested'] == 10 assert ret[0]['stats']['email']['delivered'] == 3 assert ret[0]['stats']['email']['failed'] == 5 assert ret[0]['stats']['sms']['requested'] == 50 assert ret[0]['stats']['sms']['delivered'] == 7 assert ret[0]['stats']['sms']['failed'] == 11 assert ret[0]['stats']['letter']['requested'] == 40 assert ret[0]['stats']['letter']['delivered'] == 20 assert ret[0]['stats']['letter']['failed'] == 7
def test_format_stats_by_service_sums_values_for_sending(fake_uuid): services = [service_json(fake_uuid, 'a', [])] services[0]['statistics'] = create_stats(emails_requested=10, emails_delivered=3, emails_failed=5, sms_requested=50, sms_delivered=7, sms_failed=11) ret = list(format_stats_by_service(services)) assert len(ret) == 1 assert ret[0]['sending'] == 34 assert ret[0]['delivered'] == 10 assert ret[0]['failed'] == 16
def test_format_stats_by_service_returns_correct_values(fake_uuid): services = [service_json(fake_uuid, 'a', [])] services[0]['statistics'] = create_stats( emails_requested=10, emails_delivered=3, emails_failed=5, sms_requested=50, sms_delivered=7, sms_failed=11 ) ret = list(format_stats_by_service(services)) assert len(ret) == 1 assert ret[0]['stats']['email']['sending'] == 2 assert ret[0]['stats']['email']['delivered'] == 3 assert ret[0]['stats']['email']['failed'] == 5 assert ret[0]['stats']['sms']['sending'] == 32 assert ret[0]['stats']['sms']['delivered'] == 7 assert ret[0]['stats']['sms']['failed'] == 11
def test_format_stats_by_service_sums_values_for_sending(): services = [ {'name': 'a', 'id': 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa', 'restricted': False, 'research_mode': False}, ] all_stats = [ create_stats( 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa', emails_requested=10, emails_delivered=3, emails_failed=5, sms_requested=50, sms_delivered=7, sms_failed=11 ) ] ret = format_stats_by_service(all_stats, services) assert len(ret) == 1 assert ret[0]['sending'] == 34 assert ret[0]['delivered'] == 10 assert ret[0]['failed'] == 16
def test_format_stats_by_service_gets_correct_stats_for_each_service(): services = [ {'name': 'a', 'id': 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa', 'restricted': False, 'research_mode': True}, {'name': 'b', 'id': 'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb', 'restricted': True, 'research_mode': False} ] all_stats = [ create_stats('aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa', emails_requested=1), create_stats('bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb', emails_requested=2) ] ret = format_stats_by_service(all_stats, services) assert len(ret) == 2 assert ret[0]['name'] == 'a' assert ret[0]['sending'] == 1 assert ret[0]['delivered'] == 0 assert ret[0]['failed'] == 0 assert ret[0]['restricted'] is False assert ret[1]['name'] == 'b' assert ret[1]['sending'] == 2 assert ret[1]['delivered'] == 0 assert ret[1]['failed'] == 0 assert ret[1]['restricted'] is True