@@ -49,8 +49,6 @@ def setUp(self):
49
49
@contextmanager
50
50
def mock_session (self , response_code = 200 , responses = None ,
51
51
mock_attrs = None ):
52
- if responses is None :
53
- responses = self .test_responses
54
52
if mock_attrs is None :
55
53
mock_attrs = ['get' , 'delete' , 'post' , 'put' ]
56
54
elif isinstance (mock_attrs , str ):
@@ -59,14 +57,16 @@ def mock_session(self, response_code=200, responses=None,
59
57
response = mock .MagicMock ()
60
58
response .status_code = response_code
61
59
response .json .side_effect = responses
60
+ response .json .return_value = responses
62
61
for attr in mock_attrs :
63
62
method = getattr (session , attr )
64
63
method .return_value = response
65
64
yield session
66
65
67
- def do_call (self , request_type = 'get' ):
66
+ def do_call (self , request_type = 'get' , responses = None ):
68
67
self .params = {'param_test' : 23234 }
69
- with self .mock_session (mock_attrs = request_type ) as session :
68
+ with self .mock_session (mock_attrs = request_type ,
69
+ responses = responses ) as session :
70
70
return session , getattr (self .paginator , request_type )(self .params )
71
71
72
72
def _test_result (self , res ):
@@ -96,7 +96,7 @@ def test_init_session(self, requests):
96
96
97
97
def test_get_gets (self ):
98
98
""" It should call the session with proper args. """
99
- session , _ = self .do_call ()
99
+ session , _ = self .do_call (responses = self . test_responses )
100
100
session .get .assert_called_once_with (
101
101
url = self .vals ['endpoint' ],
102
102
params = self .params ,
@@ -106,14 +106,19 @@ def test_get_gets(self):
106
106
def test_returns (self ):
107
107
"""The returns should all return properly."""
108
108
for request_type in self .REQUEST_TYPES :
109
- _ , res = self .do_call (request_type )
109
+ _ , res = self .do_call (request_type , self . test_responses )
110
110
self ._test_result (res )
111
111
112
+ def test_delete_return_null_response_body (self ):
113
+ """The delete return should be None if response body is null."""
114
+ _ , res = self .do_call ('delete' , None )
115
+ self .assertEqual (res , None )
116
+
112
117
def test_session_calls (self ):
113
118
"""The calls should all be handled properly (tests all but GET)."""
114
119
self .REQUEST_TYPES .remove ('get' )
115
120
for request_type in self .REQUEST_TYPES :
116
- session , _ = self .do_call (request_type )
121
+ session , _ = self .do_call (request_type , self . test_responses )
117
122
self ._test_session_call_json (session , request_type )
118
123
119
124
def test_call_get (self ):
0 commit comments