From f54a91603933a9a67ee3ed7bb0010017bcc1193e Mon Sep 17 00:00:00 2001 From: Sean Dague Date: Wed, 8 Aug 2012 17:27:38 -0400 Subject: Don't accept scheduler_hints if not enabled partially implements blueprint disable-server-extensions moves the filling out of the code behind a conditional to ensure this data is only passed if the extension is actually enabled Change-Id: If866eb87c9e6189b6948cb37f0cb8f5e26c8cced --- nova/tests/api/openstack/compute/test_servers.py | 25 ++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'nova/tests') diff --git a/nova/tests/api/openstack/compute/test_servers.py b/nova/tests/api/openstack/compute/test_servers.py index edd53446a..83443c206 100644 --- a/nova/tests/api/openstack/compute/test_servers.py +++ b/nova/tests/api/openstack/compute/test_servers.py @@ -1787,6 +1787,31 @@ class ServersControllerCreateTest(test.TestCase): self.stubs.Set(nova.compute.api.API, 'create', create) self._test_create_extra(params) + def test_create_instance_with_scheduler_hints_enabled(self): + self.ext_mgr.extensions = {'os-scheduler-hints': 'fake'} + hints = {'a': 'b'} + params = {'scheduler_hints': hints} + old_create = nova.compute.api.API.create + + def create(*args, **kwargs): + self.assertEqual(kwargs['scheduler_hints'], hints) + return old_create(*args, **kwargs) + + self.stubs.Set(nova.compute.api.API, 'create', create) + self._test_create_extra(params) + + def test_create_instance_with_scheduler_hints_disabled(self): + hints = {'a': 'b'} + params = {'scheduler_hints': hints} + old_create = nova.compute.api.API.create + + def create(*args, **kwargs): + self.assertEqual(kwargs['scheduler_hints'], {}) + return old_create(*args, **kwargs) + + self.stubs.Set(nova.compute.api.API, 'create', create) + self._test_create_extra(params) + def test_create_instance_with_volumes_enabled(self): self.ext_mgr.extensions = {'os-volumes': 'fake'} bdm = [{'device_name': 'foo'}] -- cgit