diff options
Diffstat (limited to 'nova/tests')
| -rw-r--r-- | nova/tests/api/openstack/compute/contrib/test_quantum_security_groups.py | 43 | ||||
| -rw-r--r-- | nova/tests/api/openstack/compute/contrib/test_security_groups.py | 24 |
2 files changed, 47 insertions, 20 deletions
diff --git a/nova/tests/api/openstack/compute/contrib/test_quantum_security_groups.py b/nova/tests/api/openstack/compute/contrib/test_quantum_security_groups.py index fb0df975a..94bc36b1f 100644 --- a/nova/tests/api/openstack/compute/contrib/test_quantum_security_groups.py +++ b/nova/tests/api/openstack/compute/contrib/test_quantum_security_groups.py @@ -130,7 +130,7 @@ class TestQuantumSecurityGroups( net = self._create_network() self._create_port( network_id=net['network']['id'], security_groups=[sg['id']], - device_id=test_security_groups.FAKE_UUID) + device_id=test_security_groups.FAKE_UUID1) expected = [{'rules': [], 'tenant_id': 'fake_tenant', 'id': sg['id'], 'name': 'test', 'description': 'test-description'}] self.stubs.Set(nova.db, 'instance_get', @@ -138,9 +138,9 @@ class TestQuantumSecurityGroups( self.stubs.Set(nova.db, 'instance_get_by_uuid', test_security_groups.return_server_by_uuid) req = fakes.HTTPRequest.blank('/v2/fake/servers/%s/os-security-groups' - % test_security_groups.FAKE_UUID) + % test_security_groups.FAKE_UUID1) res_dict = self.server_controller.index( - req, test_security_groups.FAKE_UUID)['security_groups'] + req, test_security_groups.FAKE_UUID1)['security_groups'] self.assertEquals(expected, res_dict) def test_get_security_group_by_id(self): @@ -192,7 +192,7 @@ class TestQuantumSecurityGroups( net = self._create_network() self._create_port( network_id=net['network']['id'], security_groups=[sg['id']], - device_id=test_security_groups.FAKE_UUID) + device_id=test_security_groups.FAKE_UUID1) self.stubs.Set(nova.db, 'instance_get', test_security_groups.return_server) @@ -229,7 +229,7 @@ class TestQuantumSecurityGroups( net = self._create_network() self._create_port( network_id=net['network']['id'], security_groups=[sg['id']], - device_id=test_security_groups.FAKE_UUID) + device_id=test_security_groups.FAKE_UUID1) self.stubs.Set(nova.db, 'instance_get', test_security_groups.return_server) @@ -240,6 +240,34 @@ class TestQuantumSecurityGroups( req = fakes.HTTPRequest.blank('/v2/fake/servers/1/action') self.manager._removeSecurityGroup(req, '1', body) + def test_get_instances_security_groups_bindings(self): + sg1 = self._create_sg_template(name='test1').get('security_group') + sg2 = self._create_sg_template(name='test2').get('security_group') + # test name='' is replaced with id + sg3 = self._create_sg_template(name='').get('security_group') + net = self._create_network() + self._create_port( + network_id=net['network']['id'], security_groups=[sg1['id'], + sg2['id']], + device_id=test_security_groups.FAKE_UUID1) + self._create_port( + network_id=net['network']['id'], security_groups=[sg2['id'], + sg3['id']], + device_id=test_security_groups.FAKE_UUID2) + expected = {test_security_groups.FAKE_UUID1: [{'name': sg1['name']}, + {'name': sg2['name']}], + test_security_groups.FAKE_UUID2: [{'name': sg2['name']}, + {'name': sg3['id']}]} + self.stubs.Set(nova.db, 'instance_get', + test_security_groups.return_server) + self.stubs.Set(nova.db, 'instance_get_by_uuid', + test_security_groups.return_server_by_uuid) + security_group_api = self.controller.security_group_api + bindings = ( + security_group_api.get_instances_security_groups_bindings( + context.get_admin_context())) + self.assertEquals(bindings, expected) + class TestQuantumSecurityGroupRulesTestCase(TestQuantumSecurityGroupsTestCase): def setUp(self): @@ -329,8 +357,9 @@ class TestQuantumSecurityGroupsOutputTest(TestQuantumSecurityGroupsTestCase): self.stubs.Set(compute.api.API, 'create', test_security_groups.fake_compute_create) self.stubs.Set(quantum_driver.SecurityGroupAPI, - 'get_instance_security_groups', - test_security_groups.fake_get_instance_security_groups) + 'get_instances_security_groups_bindings', + (test_security_groups. + fake_get_instances_security_groups_bindings)) self.flags( osapi_compute_extension=[ 'nova.api.openstack.compute.contrib.select_extensions'], diff --git a/nova/tests/api/openstack/compute/contrib/test_security_groups.py b/nova/tests/api/openstack/compute/contrib/test_security_groups.py index aa33f1729..480156b97 100644 --- a/nova/tests/api/openstack/compute/contrib/test_security_groups.py +++ b/nova/tests/api/openstack/compute/contrib/test_security_groups.py @@ -34,7 +34,8 @@ from nova.tests.api.openstack import fakes from nova.tests import utils CONF = cfg.CONF -FAKE_UUID = 'a47ae74e-ab08-447f-8eee-ffd43fc46c16' +FAKE_UUID1 = 'a47ae74e-ab08-447f-8eee-ffd43fc46c16' +FAKE_UUID2 = 'c6e6430a-6563-4efa-9542-5e93c9e97d18' class AttrDict(dict): @@ -81,7 +82,7 @@ def return_server(context, server_id): return {'id': int(server_id), 'power_state': 0x01, 'host': "localhost", - 'uuid': FAKE_UUID, + 'uuid': FAKE_UUID1, 'name': 'asdf'} @@ -95,12 +96,12 @@ def return_server_by_uuid(context, server_uuid): def return_non_running_server(context, server_id): return {'id': server_id, 'power_state': power_state.SHUTDOWN, - 'uuid': FAKE_UUID, 'host': "localhost", 'name': 'asdf'} + 'uuid': FAKE_UUID1, 'host': "localhost", 'name': 'asdf'} def return_security_group_by_name(context, project_id, group_name): return {'id': 1, 'name': group_name, - "instances": [{'id': 1, 'uuid': FAKE_UUID}]} + "instances": [{'id': 1, 'uuid': FAKE_UUID1}]} def return_security_group_without_instances(context, project_id, group_name): @@ -347,7 +348,7 @@ class TestSecurityGroups(test.TestCase): expected = {'security_groups': groups} def return_instance(context, server_id): - self.assertEquals(server_id, FAKE_UUID) + self.assertEquals(server_id, FAKE_UUID1) return return_server_by_uuid(context, server_id) self.stubs.Set(nova.db, 'instance_get_by_uuid', @@ -361,8 +362,8 @@ class TestSecurityGroups(test.TestCase): return_security_groups) req = fakes.HTTPRequest.blank('/v2/%s/servers/%s/os-security-groups' % - ('fake', FAKE_UUID)) - res_dict = self.server_controller.index(req, FAKE_UUID) + ('fake', FAKE_UUID1)) + res_dict = self.server_controller.index(req, FAKE_UUID1) self.assertEquals(res_dict, expected) @@ -1388,12 +1389,9 @@ def fake_compute_create(*args, **kwargs): return ([fake_compute_get()], '') -def fake_get_instance_security_groups(inst, context, instance_id): - if instance_id == UUID1: - return [{'name': 'fake-0-0'}, {'name': 'fake-0-1'}] - - elif instance_id == UUID2: - return [{'name': 'fake-1-0'}, {'name': 'fake-1-1'}] +def fake_get_instances_security_groups_bindings(inst, context): + return {UUID1: [{'name': 'fake-0-0'}, {'name': 'fake-0-1'}], + UUID2: [{'name': 'fake-1-0'}, {'name': 'fake-1-1'}]} class SecurityGroupsOutputTest(test.TestCase): |
