@@ -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