1212 import kerberos
1313 kerberos_module_name = 'kerberos'
1414except ImportError :
15- import kerberos_sspi as kerberos # On Windows
16- kerberos_module_name = 'kerberos_sspi '
15+ import winkerberos as kerberos # On Windows
16+ kerberos_module_name = 'winkerberos '
1717
1818import requests_kerberos
1919import unittest
@@ -54,12 +54,6 @@ def setUp(self):
5454 clientStep_error .reset_mock ()
5555 clientStep_exception .reset_mock ()
5656 clientResponse .reset_mock ()
57-
58- # When using kerberos-sspi, we never pass principal to authGSSClientInit().
59- # This affects our repeated use of assert_called_with().
60- self .clientInit_default_principal = {'principal' : None }
61- if kerberos_module_name == 'kerberos_sspi' :
62- self .clientInit_default_principal = {}
6357
6458 def tearDown (self ):
6559 """Teardown."""
@@ -126,7 +120,7 @@ def test_generate_request_header(self):
126120 gssflags = (
127121 kerberos .GSS_C_MUTUAL_FLAG |
128122 kerberos .GSS_C_SEQUENCE_FLAG ),
129- ** self . clientInit_default_principal )
123+ principal = None )
130124 clientStep_continue .assert_called_with ("CTX" , "token" )
131125 clientResponse .assert_called_with ("CTX" )
132126
@@ -148,7 +142,7 @@ def test_generate_request_header_init_error(self):
148142 gssflags = (
149143 kerberos .GSS_C_MUTUAL_FLAG |
150144 kerberos .GSS_C_SEQUENCE_FLAG ),
151- ** self . clientInit_default_principal )
145+ principal = None )
152146 self .assertFalse (clientStep_continue .called )
153147 self .assertFalse (clientResponse .called )
154148
@@ -170,7 +164,7 @@ def test_generate_request_header_step_error(self):
170164 gssflags = (
171165 kerberos .GSS_C_MUTUAL_FLAG |
172166 kerberos .GSS_C_SEQUENCE_FLAG ),
173- ** self . clientInit_default_principal )
167+ principal = None )
174168 clientStep_error .assert_called_with ("CTX" , "token" )
175169 self .assertFalse (clientResponse .called )
176170
@@ -215,7 +209,7 @@ def test_authenticate_user(self):
215209 gssflags = (
216210 kerberos .GSS_C_MUTUAL_FLAG |
217211 kerberos .GSS_C_SEQUENCE_FLAG ),
218- ** self . clientInit_default_principal )
212+ principal = None )
219213 clientStep_continue .assert_called_with ("CTX" , "token" )
220214 clientResponse .assert_called_with ("CTX" )
221215
@@ -260,7 +254,7 @@ def test_handle_401(self):
260254 gssflags = (
261255 kerberos .GSS_C_MUTUAL_FLAG |
262256 kerberos .GSS_C_SEQUENCE_FLAG ),
263- ** self . clientInit_default_principal )
257+ principal = None )
264258 clientStep_continue .assert_called_with ("CTX" , "token" )
265259 clientResponse .assert_called_with ("CTX" )
266260
@@ -501,7 +495,7 @@ def test_handle_response_401(self):
501495 gssflags = (
502496 kerberos .GSS_C_MUTUAL_FLAG |
503497 kerberos .GSS_C_SEQUENCE_FLAG ),
504- ** self . clientInit_default_principal )
498+ principal = None )
505499 clientStep_continue .assert_called_with ("CTX" , "token" )
506500 clientResponse .assert_called_with ("CTX" )
507501
@@ -551,7 +545,7 @@ def connection_send(self, *args, **kwargs):
551545 gssflags = (
552546 kerberos .GSS_C_MUTUAL_FLAG |
553547 kerberos .GSS_C_SEQUENCE_FLAG ),
554- ** self . clientInit_default_principal )
548+ principal = None )
555549 clientStep_continue .assert_called_with ("CTX" , "token" )
556550 clientResponse .assert_called_with ("CTX" )
557551
@@ -571,7 +565,7 @@ def test_generate_request_header_custom_service(self):
571565 gssflags = (
572566 kerberos .GSS_C_MUTUAL_FLAG |
573567 kerberos .GSS_C_SEQUENCE_FLAG ),
574- ** self . clientInit_default_principal )
568+ principal = None )
575569
576570 def test_delegation (self ):
577571 with patch .multiple (kerberos_module_name ,
@@ -615,7 +609,7 @@ def test_delegation(self):
615609 kerberos .GSS_C_MUTUAL_FLAG |
616610 kerberos .GSS_C_SEQUENCE_FLAG |
617611 kerberos .GSS_C_DELEG_FLAG ),
618- ** self . clientInit_default_principal
612+ principal = None
619613 )
620614 clientStep_continue .assert_called_with ("CTX" , "token" )
621615 clientResponse .assert_called_with ("CTX" )
@@ -630,18 +624,13 @@ def test_principal_override(self):
630624 response .headers = {'www-authenticate' : 'negotiate token' }
631625 host = urlparse (response .url ).hostname
632626 auth = requests_kerberos .HTTPKerberosAuth (principal = "user@REALM" )
633- try :
634- auth .generate_request_header (response , host )
635- clientInit_complete .assert_called_with (
636- "HTTP@www.example.org" ,
637- gssflags = (
638- kerberos .GSS_C_MUTUAL_FLAG |
639- kerberos .GSS_C_SEQUENCE_FLAG ),
640- principal = "user@REALM" )
641- except NotImplementedError :
642- # principal is not supported with kerberos-sspi.
643- if not auth ._using_kerberos_sspi :
644- raise
627+ auth .generate_request_header (response , host )
628+ clientInit_complete .assert_called_with (
629+ "HTTP@www.example.org" ,
630+ gssflags = (
631+ kerberos .GSS_C_MUTUAL_FLAG |
632+ kerberos .GSS_C_SEQUENCE_FLAG ),
633+ principal = "user@REALM" )
645634
646635 def test_realm_override (self ):
647636 with patch .multiple (kerberos_module_name ,
@@ -659,29 +648,7 @@ def test_realm_override(self):
659648 gssflags = (
660649 kerberos .GSS_C_MUTUAL_FLAG |
661650 kerberos .GSS_C_SEQUENCE_FLAG ),
662- ** self .clientInit_default_principal )
663-
664- def test_kerberos_sspi_reject_principal (self ):
665- with patch .multiple (kerberos_module_name ,
666- authGSSClientInit = clientInit_complete ,
667- authGSSClientResponse = clientResponse ,
668- authGSSClientStep = clientStep_continue ):
669- response = requests .Response ()
670- response .url = "http://www.example.org/"
671- host = urlparse (response .url ).hostname
672-
673- auth = requests_kerberos .HTTPKerberosAuth (principal = "user@REALM" )
674- auth ._using_kerberos_sspi = True
675- self .assertRaises (NotImplementedError , auth .generate_request_header , response , host )
676-
677- auth = requests_kerberos .HTTPKerberosAuth (principal = None )
678- auth ._using_kerberos_sspi = True
679- auth .generate_request_header (response , host )
680- clientInit_complete .assert_called_with (
681- "HTTP@www.example.org" ,
682- gssflags = (
683- kerberos .GSS_C_MUTUAL_FLAG |
684- kerberos .GSS_C_SEQUENCE_FLAG ))
651+ principal = None )
685652
686653
687654if __name__ == '__main__' :
0 commit comments