@@ -127,127 +127,137 @@ def setup_method(self):
127127 """Set up test fixtures"""
128128 self .client = JupiterOneClient (account = "test-account" , token = "test-token" )
129129
130- @patch .object (JupiterOneClient , 'session' )
131- def test_execute_query_401_error (self , mock_session ):
130+ def test_execute_query_401_error (self ):
132131 """Test _execute_query method with 401 error"""
133132 mock_response = Mock ()
134133 mock_response .status_code = 401
135- mock_session .post .return_value = mock_response
134+
135+ with patch .object (self .client , 'session' ) as mock_session :
136+ mock_session .post .return_value = mock_response
136137
137- with pytest .raises (JupiterOneApiError , match = "401: Unauthorized" ):
138- self .client ._execute_query ("test query" )
138+ with pytest .raises (JupiterOneApiError , match = "401: Unauthorized" ):
139+ self .client ._execute_query ("test query" )
139140
140- @patch .object (JupiterOneClient , 'session' )
141- def test_execute_query_429_error (self , mock_session ):
141+ def test_execute_query_429_error (self ):
142142 """Test _execute_query method with 429 error"""
143143 mock_response = Mock ()
144144 mock_response .status_code = 429
145- mock_session .post .return_value = mock_response
145+
146+ with patch .object (self .client , 'session' ) as mock_session :
147+ mock_session .post .return_value = mock_response
146148
147- with pytest .raises (JupiterOneApiRetryError , match = "rate limit exceeded" ):
148- self .client ._execute_query ("test query" )
149+ with pytest .raises (JupiterOneApiRetryError , match = "rate limit exceeded" ):
150+ self .client ._execute_query ("test query" )
149151
150- @patch .object (JupiterOneClient , 'session' )
151- def test_execute_query_503_error (self , mock_session ):
152+ def test_execute_query_503_error (self ):
152153 """Test _execute_query method with 503 error"""
153154 mock_response = Mock ()
154155 mock_response .status_code = 503
155- mock_session .post .return_value = mock_response
156+
157+ with patch .object (self .client , 'session' ) as mock_session :
158+ mock_session .post .return_value = mock_response
156159
157- with pytest .raises (JupiterOneApiRetryError , match = "rate limit exceeded" ):
158- self .client ._execute_query ("test query" )
160+ with pytest .raises (JupiterOneApiRetryError , match = "rate limit exceeded" ):
161+ self .client ._execute_query ("test query" )
159162
160- @patch .object (JupiterOneClient , 'session' )
161- def test_execute_query_504_error (self , mock_session ):
163+ def test_execute_query_504_error (self ):
162164 """Test _execute_query method with 504 error"""
163165 mock_response = Mock ()
164166 mock_response .status_code = 504
165- mock_session .post .return_value = mock_response
167+
168+ with patch .object (self .client , 'session' ) as mock_session :
169+ mock_session .post .return_value = mock_response
166170
167- with pytest .raises (JupiterOneApiRetryError , match = "Gateway Timeout" ):
168- self .client ._execute_query ("test query" )
171+ with pytest .raises (JupiterOneApiRetryError , match = "Gateway Timeout" ):
172+ self .client ._execute_query ("test query" )
169173
170- @patch .object (JupiterOneClient , 'session' )
171- def test_execute_query_500_error (self , mock_session ):
174+ def test_execute_query_500_error (self ):
172175 """Test _execute_query method with 500 error"""
173176 mock_response = Mock ()
174177 mock_response .status_code = 500
175- mock_session .post .return_value = mock_response
178+
179+ with patch .object (self .client , 'session' ) as mock_session :
180+ mock_session .post .return_value = mock_response
176181
177- with pytest .raises (JupiterOneApiError , match = "internal server error" ):
178- self .client ._execute_query ("test query" )
182+ with pytest .raises (JupiterOneApiError , match = "internal server error" ):
183+ self .client ._execute_query ("test query" )
179184
180- @patch .object (JupiterOneClient , 'session' )
181- def test_execute_query_200_with_errors (self , mock_session ):
185+ def test_execute_query_200_with_errors (self ):
182186 """Test _execute_query method with 200 status but GraphQL errors"""
183187 mock_response = Mock ()
184188 mock_response .status_code = 200
185189 mock_response .json .return_value = {
186190 "errors" : [{"message" : "GraphQL error" }]
187191 }
188- mock_session .post .return_value = mock_response
192+
193+ with patch .object (self .client , 'session' ) as mock_session :
194+ mock_session .post .return_value = mock_response
189195
190- with pytest .raises (JupiterOneApiError ):
191- self .client ._execute_query ("test query" )
196+ with pytest .raises (JupiterOneApiError ):
197+ self .client ._execute_query ("test query" )
192198
193- @patch .object (JupiterOneClient , 'session' )
194- def test_execute_query_200_with_429_in_errors (self , mock_session ):
199+ def test_execute_query_200_with_429_in_errors (self ):
195200 """Test _execute_query method with 200 status but 429 in GraphQL errors"""
196201 mock_response = Mock ()
197202 mock_response .status_code = 200
198203 mock_response .json .return_value = {
199204 "errors" : [{"message" : "429 rate limit exceeded" }]
200205 }
201- mock_session .post .return_value = mock_response
206+
207+ with patch .object (self .client , 'session' ) as mock_session :
208+ mock_session .post .return_value = mock_response
202209
203- with pytest .raises (JupiterOneApiRetryError , match = "rate limit exceeded" ):
204- self .client ._execute_query ("test query" )
210+ with pytest .raises (JupiterOneApiRetryError , match = "rate limit exceeded" ):
211+ self .client ._execute_query ("test query" )
205212
206- @patch .object (JupiterOneClient , 'session' )
207- def test_execute_query_200_success (self , mock_session ):
213+ def test_execute_query_200_success (self ):
208214 """Test _execute_query method with successful 200 response"""
209215 mock_response = Mock ()
210216 mock_response .status_code = 200
211217 mock_response .json .return_value = {
212218 "data" : {"result" : "success" }
213219 }
214- mock_session .post .return_value = mock_response
215-
216- result = self .client ._execute_query ("test query" )
217220
218- assert result == {"data" : {"result" : "success" }}
221+ with patch .object (self .client , 'session' ) as mock_session :
222+ mock_session .post .return_value = mock_response
223+
224+ result = self .client ._execute_query ("test query" )
225+
226+ assert result == {"data" : {"result" : "success" }}
219227
220- @patch .object (JupiterOneClient , 'session' )
221- def test_execute_query_with_variables (self , mock_session ):
228+ def test_execute_query_with_variables (self ):
222229 """Test _execute_query method with variables"""
223230 mock_response = Mock ()
224231 mock_response .status_code = 200
225232 mock_response .json .return_value = {
226233 "data" : {"result" : "success" }
227234 }
228- mock_session .post .return_value = mock_response
229-
230- variables = {"key" : "value" }
231- self .client ._execute_query ("test query" , variables = variables )
232235
233- # Verify that variables were included in the request
234- call_args = mock_session .post .call_args
235- assert "variables" in call_args [1 ]["json" ]
236- assert call_args [1 ]["json" ]["variables" ] == variables
237-
238- @patch .object (JupiterOneClient , 'session' )
239- def test_execute_query_with_flags (self , mock_session ):
236+ with patch .object (self .client , 'session' ) as mock_session :
237+ mock_session .post .return_value = mock_response
238+
239+ variables = {"key" : "value" }
240+ self .client ._execute_query ("test query" , variables = variables )
241+
242+ # Verify that variables were included in the request
243+ call_args = mock_session .post .call_args
244+ assert "variables" in call_args [1 ]["json" ]
245+ assert call_args [1 ]["json" ]["variables" ] == variables
246+
247+ def test_execute_query_with_flags (self ):
240248 """Test _execute_query method includes flags"""
241249 mock_response = Mock ()
242250 mock_response .status_code = 200
243251 mock_response .json .return_value = {
244252 "data" : {"result" : "success" }
245253 }
246- mock_session .post .return_value = mock_response
247-
248- self .client ._execute_query ("test query" )
249254
250- # Verify that flags were included in the request
251- call_args = mock_session .post .call_args
252- assert "flags" in call_args [1 ]["json" ]
253- assert call_args [1 ]["json" ]["flags" ] == {"variableResultSize" : True }
255+ with patch .object (self .client , 'session' ) as mock_session :
256+ mock_session .post .return_value = mock_response
257+
258+ self .client ._execute_query ("test query" )
259+
260+ # Verify that flags were included in the request
261+ call_args = mock_session .post .call_args
262+ assert "flags" in call_args [1 ]["json" ]
263+ assert call_args [1 ]["json" ]["flags" ] == {"variableResultSize" : True }
0 commit comments