@@ -25,21 +25,33 @@ class TestIdentityProvider(identity_fakes.TestFederatedIdentity):
2525 def setUp (self ):
2626 super (TestIdentityProvider , self ).setUp ()
2727
28+ # Identity Provider mocks
2829 federation_lib = self .app .client_manager .identity .federation
2930 self .identity_providers_mock = federation_lib .identity_providers
3031 self .identity_providers_mock .reset_mock ()
3132
33+ # Domain mocks
34+ self .domains_mock = self .app .client_manager .identity .domains
35+ self .domains_mock .reset_mock ()
36+ self .domain = identity_fakes .FakeDomain .create_one_domain (
37+ identity_fakes .DOMAIN
38+ )
39+ self .domains_mock .list .return_value = [self .domain ]
40+ self .domains_mock .get .return_value = self .domain
41+
3242
3343class TestIdentityProviderCreate (TestIdentityProvider ):
3444
3545 columns = (
3646 'description' ,
47+ 'domain_id' ,
3748 'enabled' ,
3849 'id' ,
3950 'remote_ids' ,
4051 )
4152 datalist = (
4253 identity_fakes .idp_description ,
54+ identity_fakes .domain_id ,
4355 True ,
4456 identity_fakes .idp_id ,
4557 identity_fakes .formatted_idp_remote_ids ,
@@ -68,6 +80,7 @@ def test_create_identity_provider_no_options(self):
6880 'remote_ids' : None ,
6981 'enabled' : True ,
7082 'description' : None ,
83+ 'domain_id' : None ,
7184 }
7285
7386 self .identity_providers_mock .create .assert_called_with (
@@ -94,6 +107,7 @@ def test_create_identity_provider_description(self):
94107 kwargs = {
95108 'remote_ids' : None ,
96109 'description' : identity_fakes .idp_description ,
110+ 'domain_id' : None ,
97111 'enabled' : True ,
98112 }
99113
@@ -121,6 +135,7 @@ def test_create_identity_provider_remote_id(self):
121135 kwargs = {
122136 'remote_ids' : identity_fakes .idp_remote_ids [:1 ],
123137 'description' : None ,
138+ 'domain_id' : None ,
124139 'enabled' : True ,
125140 }
126141
@@ -149,6 +164,7 @@ def test_create_identity_provider_remote_ids_multiple(self):
149164 kwargs = {
150165 'remote_ids' : identity_fakes .idp_remote_ids ,
151166 'description' : None ,
167+ 'domain_id' : None ,
152168 'enabled' : True ,
153169 }
154170
@@ -181,6 +197,7 @@ def test_create_identity_provider_remote_ids_file(self):
181197 kwargs = {
182198 'remote_ids' : identity_fakes .idp_remote_ids ,
183199 'description' : None ,
200+ 'domain_id' : None ,
184201 'enabled' : True ,
185202 }
186203
@@ -217,6 +234,7 @@ def test_create_identity_provider_disabled(self):
217234 'remote_ids' : None ,
218235 'enabled' : False ,
219236 'description' : None ,
237+ 'domain_id' : None ,
220238 }
221239
222240 self .identity_providers_mock .create .assert_called_with (
@@ -227,12 +245,69 @@ def test_create_identity_provider_disabled(self):
227245 self .assertEqual (self .columns , columns )
228246 datalist = (
229247 None ,
248+ identity_fakes .domain_id ,
230249 False ,
231250 identity_fakes .idp_id ,
232251 identity_fakes .formatted_idp_remote_ids
233252 )
234253 self .assertEqual (datalist , data )
235254
255+ def test_create_identity_provider_domain_name (self ):
256+ arglist = [
257+ '--domain' , identity_fakes .domain_name ,
258+ identity_fakes .idp_id ,
259+ ]
260+ verifylist = [
261+ ('identity_provider_id' , identity_fakes .idp_id ),
262+ ('domain' , identity_fakes .domain_name ),
263+ ]
264+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
265+ columns , data = self .cmd .take_action (parsed_args )
266+
267+ # Set expected values
268+ kwargs = {
269+ 'remote_ids' : None ,
270+ 'description' : None ,
271+ 'domain_id' : identity_fakes .domain_id ,
272+ 'enabled' : True ,
273+ }
274+
275+ self .identity_providers_mock .create .assert_called_with (
276+ id = identity_fakes .idp_id ,
277+ ** kwargs
278+ )
279+
280+ self .assertEqual (self .columns , columns )
281+ self .assertEqual (self .datalist , data )
282+
283+ def test_create_identity_provider_domain_id (self ):
284+ arglist = [
285+ '--domain' , identity_fakes .domain_id ,
286+ identity_fakes .idp_id ,
287+ ]
288+ verifylist = [
289+ ('identity_provider_id' , identity_fakes .idp_id ),
290+ ('domain' , identity_fakes .domain_id ),
291+ ]
292+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
293+ columns , data = self .cmd .take_action (parsed_args )
294+
295+ # Set expected values
296+ kwargs = {
297+ 'remote_ids' : None ,
298+ 'description' : None ,
299+ 'domain_id' : identity_fakes .domain_id ,
300+ 'enabled' : True ,
301+ }
302+
303+ self .identity_providers_mock .create .assert_called_with (
304+ id = identity_fakes .idp_id ,
305+ ** kwargs
306+ )
307+
308+ self .assertEqual (self .columns , columns )
309+ self .assertEqual (self .datalist , data )
310+
236311
237312class TestIdentityProviderDelete (TestIdentityProvider ):
238313
@@ -299,11 +374,12 @@ def test_identity_provider_list_no_options(self):
299374
300375 self .identity_providers_mock .list .assert_called_with ()
301376
302- collist = ('ID' , 'Enabled' , 'Description' )
377+ collist = ('ID' , 'Enabled' , 'Domain ID' , ' Description' )
303378 self .assertEqual (collist , columns )
304379 datalist = ((
305380 identity_fakes .idp_id ,
306381 True ,
382+ identity_fakes .domain_id ,
307383 identity_fakes .idp_description ,
308384 ), )
309385 self .assertEqual (datalist , tuple (data ))
@@ -582,10 +658,11 @@ def test_identity_provider_show(self):
582658 id = 'test_idp'
583659 )
584660
585- collist = ('description' , 'enabled' , 'id' , 'remote_ids' )
661+ collist = ('description' , 'domain_id' , ' enabled' , 'id' , 'remote_ids' )
586662 self .assertEqual (collist , columns )
587663 datalist = (
588664 identity_fakes .idp_description ,
665+ identity_fakes .domain_id ,
589666 True ,
590667 identity_fakes .idp_id ,
591668 identity_fakes .formatted_idp_remote_ids
0 commit comments