Projekt

Obecné

Profil

Stáhnout (2.01 KB) Statistiky
| Větev: | Tag: | Revize:
1
from client.src.usb_detector import api_client
2

    
3
import requests
4
from unittest import mock
5

    
6

    
7
@mock.patch('client.src.usb_detector.api_client._cache_failed_payload')
8
def test_send_data_1(_cache_failed_payload_mock):
9
    payload_mock = {
10
        "device": {
11
            "vendor_id": 1,
12
            "product_id": 2
13
        }
14
    }
15

    
16
    api_client._uri = None
17
    api_client.send_data(payload_mock)
18

    
19
    args = _cache_failed_payload_mock.call_args.args
20
    _cache_failed_payload_mock.assert_called()
21
    assert args[0] == payload_mock
22

    
23

    
24
@mock.patch('client.src.usb_detector.api_client._cache_failed_payload')
25
def test_send_data_2(_cache_failed_payload_mock):
26
    payload_mock = {
27
        "device": {
28
            "vendor_id": 1,
29
            "product_id": 2
30
        }
31
    }
32

    
33
    api_client._uri = "127.0.0.1:54444/api/v1/usb-logs"
34
    api_client.send_data(payload_mock)
35

    
36
    args = _cache_failed_payload_mock.call_args.args
37
    _cache_failed_payload_mock.assert_called()
38
    assert args[0] == payload_mock
39

    
40

    
41
@mock.patch('client.src.usb_detector.api_client.requests.post')
42
@mock.patch('client.src.usb_detector.api_client._cache_failed_payload')
43
def test_send_data_3(_cache_failed_payload_mock, post_mock):
44
    payload_mock = {
45
        "device": {
46
            "vendor_id": 1,
47
            "product_id": 2
48
        }
49
    }
50

    
51
    api_client._uri = "127.0.0.1:54444/api/v1/usb-logs"
52
    api_client.send_data(payload_mock)
53

    
54
    _cache_failed_payload_mock.assert_not_called()
55

    
56

    
57
@mock.patch('client.src.usb_detector.api_client.requests.post')
58
@mock.patch('client.src.usb_detector.api_client._cache_failed_payload')
59
def test_send_data_4(_cache_failed_payload_mock, post_mock):
60
    payload_mock = {
61
        "device": {
62
            "vendor_id": 1,
63
            "product_id": 2
64
        }
65
    }
66
    post_mock.side_effect = requests.exceptions.HTTPError()
67

    
68
    api_client._uri = "127.0.0.1:54444/api/v1/usb-logs"
69
    api_client.send_data(payload_mock)
70

    
71
    args = _cache_failed_payload_mock.call_args.args
72
    _cache_failed_payload_mock.assert_called()
73
    assert args[0] == payload_mock
(11-11/14)