Skip to content

Commit beaa061

Browse files
Jenkinsopenstack-gerrit
authored andcommitted
Merge "Pass security group id to novaclient"
2 parents 5bd7d68 + 8405db9 commit beaa061

2 files changed

Lines changed: 54 additions & 1 deletion

File tree

openstackclient/compute/v2/server.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1222,7 +1222,7 @@ def take_action(self, parsed_args):
12221222
parsed_args.group,
12231223
)
12241224

1225-
server.remove_security_group(security_group)
1225+
server.remove_security_group(security_group.id)
12261226

12271227

12281228
class RemoveServerVolume(command.Command):

openstackclient/tests/compute/v2/test_server.py

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,11 @@ def setUp(self):
4343
self.flavors_mock = self.app.client_manager.compute.flavors
4444
self.flavors_mock.reset_mock()
4545

46+
# Get a shortcut to the compute client SecurityGroupManager Mock
47+
self.security_groups_mock = \
48+
self.app.client_manager.compute.security_groups
49+
self.security_groups_mock.reset_mock()
50+
4651
# Get a shortcut to the image client ImageManager Mock
4752
self.images_mock = self.app.client_manager.image.images
4853
self.images_mock.reset_mock()
@@ -981,6 +986,54 @@ def test_server_remove_floating_ip(self):
981986
self.assertIsNone(result)
982987

983988

989+
class TestServerRemoveSecurityGroup(TestServer):
990+
991+
def setUp(self):
992+
super(TestServerRemoveSecurityGroup, self).setUp()
993+
994+
self.security_group = \
995+
compute_fakes.FakeSecurityGroup.create_one_security_group()
996+
# This is the return value for utils.find_resource() for security group
997+
self.security_groups_mock.get.return_value = self.security_group
998+
999+
attrs = {
1000+
'security_groups': [{'name': self.security_group.id}]
1001+
}
1002+
methods = {
1003+
'remove_security_group': None,
1004+
}
1005+
1006+
self.server = compute_fakes.FakeServer.create_one_server(
1007+
attrs=attrs,
1008+
methods=methods
1009+
)
1010+
# This is the return value for utils.find_resource() for server
1011+
self.servers_mock.get.return_value = self.server
1012+
1013+
# Get the command object to test
1014+
self.cmd = server.RemoveServerSecurityGroup(self.app, None)
1015+
1016+
def test_server_remove_security_group(self):
1017+
arglist = [
1018+
self.server.id,
1019+
self.security_group.id
1020+
]
1021+
verifylist = [
1022+
('server', self.server.id),
1023+
('group', self.security_group.id),
1024+
]
1025+
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
1026+
result = self.cmd.take_action(parsed_args)
1027+
self.security_groups_mock.get.assert_called_with(
1028+
self.security_group.id,
1029+
)
1030+
self.servers_mock.get.assert_called_with(self.server.id)
1031+
self.server.remove_security_group.assert_called_with(
1032+
self.security_group.id,
1033+
)
1034+
self.assertIsNone(result)
1035+
1036+
9841037
class TestServerResize(TestServer):
9851038

9861039
def setUp(self):

0 commit comments

Comments
 (0)