@@ -317,6 +317,62 @@ def test_network_rbac_list(self):
317317 self .assertEqual (self .data , list (data ))
318318
319319
320+ class TestSetNetworkRBAC (TestNetworkRBAC ):
321+
322+ project = identity_fakes_v3 .FakeProject .create_one_project ()
323+ rbac_policy = network_fakes .FakeNetworkRBAC .create_one_network_rbac (
324+ attrs = {'target_tenant' : project .id })
325+
326+ def setUp (self ):
327+ super (TestSetNetworkRBAC , self ).setUp ()
328+
329+ # Get the command object to test
330+ self .cmd = network_rbac .SetNetworkRBAC (self .app , self .namespace )
331+
332+ self .network .find_rbac_policy = mock .Mock (
333+ return_value = self .rbac_policy )
334+ self .network .update_rbac_policy = mock .Mock (return_value = None )
335+ self .projects_mock .get .return_value = self .project
336+
337+ def test_network_rbac_set_nothing (self ):
338+ arglist = [
339+ self .rbac_policy .id ,
340+ ]
341+ verifylist = [
342+ ('rbac_policy' , self .rbac_policy .id ),
343+ ]
344+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
345+
346+ result = self .cmd .take_action (parsed_args )
347+ self .network .find_rbac_policy .assert_called_once_with (
348+ self .rbac_policy .id , ignore_missing = False
349+ )
350+ attrs = {}
351+ self .network .update_rbac_policy .assert_called_once_with (
352+ self .rbac_policy , ** attrs )
353+ self .assertIsNone (result )
354+
355+ def test_network_rbac_set (self ):
356+ arglist = [
357+ '--target-project' , self .project .id ,
358+ self .rbac_policy .id ,
359+ ]
360+ verifylist = [
361+ ('target_project' , self .project .id ),
362+ ('rbac_policy' , self .rbac_policy .id ),
363+ ]
364+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
365+
366+ result = self .cmd .take_action (parsed_args )
367+ self .network .find_rbac_policy .assert_called_once_with (
368+ self .rbac_policy .id , ignore_missing = False
369+ )
370+ attrs = {'target_tenant' : self .project .id }
371+ self .network .update_rbac_policy .assert_called_once_with (
372+ self .rbac_policy , ** attrs )
373+ self .assertIsNone (result )
374+
375+
320376class TestShowNetworkRBAC (TestNetworkRBAC ):
321377
322378 rbac_policy = network_fakes .FakeNetworkRBAC .create_one_network_rbac ()
0 commit comments