@@ -280,6 +280,10 @@ def test_ssl_context():
280
280
281
281
282
282
def test_verify_ssl (missing_packages ):
283
+ # Clear environment variables
284
+ os .environ .pop ('SSLREQCERT' , None )
285
+ os .environ .pop ('REQUESTS_CA_BUNDLE' , None )
286
+
283
287
with mock .patch ('sasctl.core.Session.get_token' , return_value = 'token' ):
284
288
# Should verify SSL by default
285
289
s = Session ('hostname' , 'username' , 'password' )
@@ -315,6 +319,35 @@ def test_verify_ssl(missing_packages):
315
319
s = Session ('127.0.0.1' , 'username' , 'password' , verify_ssl = True )
316
320
assert s .verify == True
317
321
322
+ # Clear environment variables
323
+ os .environ .pop ('SSLREQCERT' , None )
324
+ os .environ .pop ('REQUESTS_CA_BUNDLE' , None )
325
+
326
+ # Ensure correct verify_ssl values are passed to requests module
327
+ with mock .patch ('requests.Session.request' ) as req :
328
+ req .return_value .status_code = 200
329
+ s = Session ('127.0.0.1' , 'username' , 'password' )
330
+
331
+ # Check value passed to verify= parameter
332
+ assert req .call_args [0 ][13 ] == True
333
+ assert s .verify == True
334
+
335
+ with mock .patch ('requests.Session.request' ) as req :
336
+ req .return_value .status_code = 200
337
+ s = Session ('127.0.0.1' , 'username' , 'password' , verify_ssl = False )
338
+
339
+ # Check value passed to verify= parameter
340
+ assert req .call_args [0 ][13 ] == False
341
+ assert s .verify == False
342
+
343
+ with mock .patch ('requests.Session.request' ) as req :
344
+ # Explicit verify_ssl= flag should take precedence over env vars
345
+ os .environ ['REQUESTS_CA_BUNDLE' ] = 'dummy.crt'
346
+ s = Session ('127.0.0.1' , 'username' , 'password' , verify_ssl = False )
347
+
348
+ # Check value passed to verify= parameter
349
+ assert req .call_args [0 ][13 ] == False
350
+ assert s .verify == False
318
351
319
352
320
353
def test_kerberos ():
0 commit comments