File: test_metrics.py

package info (click to toggle)
python-sparkpost 1.3.10-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 512 kB
  • sloc: python: 2,528; makefile: 31; sh: 10
file content (65 lines) | stat: -rw-r--r-- 1,725 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
import pytest
import responses

from sparkpost import SparkPost
from sparkpost.exceptions import SparkPostAPIException


@responses.activate
def test_success_campaigns():
    responses.add(
        responses.GET,
        'https://api.sparkpost.com/api/v1/metrics/campaigns',
        status=200,
        content_type='application/json',
        body='{"results": {"campaigns": []}}'
    )
    sp = SparkPost('fake-key')
    results = sp.metrics.campaigns.list()
    assert results == []


@responses.activate
def test_fail_campaigns():
    responses.add(
        responses.GET,
        'https://api.sparkpost.com/api/v1/metrics/campaigns',
        status=500,
        content_type='application/json',
        body="""
        {"errors": [{"message": "You failed", "description": "More Info"}]}
        """
    )
    with pytest.raises(SparkPostAPIException):
        sp = SparkPost('fake-key')
        sp.metrics.campaigns.list()


@responses.activate
def test_success_domains():
    responses.add(
        responses.GET,
        'https://api.sparkpost.com/api/v1/metrics/domains',
        status=200,
        content_type='application/json',
        body='{"results": {"domains": []}}'
    )
    sp = SparkPost('fake-key')
    results = sp.metrics.domains.list()
    assert results == []


@responses.activate
def test_fail_domains():
    responses.add(
        responses.GET,
        'https://api.sparkpost.com/api/v1/metrics/domains',
        status=500,
        content_type='application/json',
        body="""
        {"errors": [{"message": "You failed", "description": "More Info"}]}
        """
    )
    with pytest.raises(SparkPostAPIException):
        sp = SparkPost('fake-key')
        sp.metrics.domains.list()