summaryrefslogtreecommitdiffstats
path: root/nova/tests
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2012-08-10 23:04:48 +0000
committerGerrit Code Review <review@openstack.org>2012-08-10 23:04:48 +0000
commitfaa0b5e88bba74437599ff3e7f250b6eb359339f (patch)
tree94cca9fa86b459eb3f7a41cf6178f41f8af8c009 /nova/tests
parentb962f98a18a4070ae859b8a98b4169e37db6fa69 (diff)
parent0bfbce95c8bb867d8e8d27cb7c7429465cc88f15 (diff)
Merge changes I7aef0ebe,I0dd233c2
* changes: Key user_data in create server off of extension Key block_device_mapping off of volume extension
Diffstat (limited to 'nova/tests')
-rw-r--r--nova/tests/api/openstack/compute/test_extensions.py1
-rw-r--r--nova/tests/api/openstack/compute/test_servers.py66
2 files changed, 59 insertions, 8 deletions
diff --git a/nova/tests/api/openstack/compute/test_extensions.py b/nova/tests/api/openstack/compute/test_extensions.py
index ebecb3ce6..48875dd3d 100644
--- a/nova/tests/api/openstack/compute/test_extensions.py
+++ b/nova/tests/api/openstack/compute/test_extensions.py
@@ -184,6 +184,7 @@ class ExtensionControllerTest(ExtensionTestCase):
"ServerDiagnostics",
"ServerStartStop",
"SimpleTenantUsage",
+ "UserData",
"VirtualInterfaces",
"Volumes",
"VolumeTypes",
diff --git a/nova/tests/api/openstack/compute/test_servers.py b/nova/tests/api/openstack/compute/test_servers.py
index e482ca812..6e81d99bc 100644
--- a/nova/tests/api/openstack/compute/test_servers.py
+++ b/nova/tests/api/openstack/compute/test_servers.py
@@ -1748,13 +1748,11 @@ class ServersControllerCreateTest(test.TestCase):
fakes.stub_out_key_pair_funcs(self.stubs, have_key_pair=False)
self._test_create_instance()
- def _test_create_security_group(self, group):
+ def _test_create_extra(self, params):
image_uuid = 'c905cedb-7281-47e4-8a62-f26bc5fc4c77'
- body = dict(server=dict(
- name='server_test', imageRef=image_uuid, flavorRef=2,
- metadata={'hello': 'world', 'open': 'stack'},
- security_groups=[{'name': group}],
- personality={}))
+ server = dict(name='server_test', imageRef=image_uuid, flavorRef=2)
+ server.update(params)
+ body = dict(server=server)
req = fakes.HTTPRequest.blank('/v2/fake/servers')
req.method = 'POST'
req.body = jsonutils.dumps(body)
@@ -1764,6 +1762,7 @@ class ServersControllerCreateTest(test.TestCase):
def test_create_instance_with_security_group_enabled(self):
self.ext_mgr.extensions = {'os-security-groups': 'fake'}
group = 'foo'
+ params = {'security_groups': [{'name': group}]}
old_create = nova.compute.api.API.create
def create(*args, **kwargs):
@@ -1771,10 +1770,11 @@ class ServersControllerCreateTest(test.TestCase):
return old_create(*args, **kwargs)
self.stubs.Set(nova.compute.api.API, 'create', create)
- self._test_create_security_group(group)
+ self._test_create_extra(params)
def test_create_instance_with_security_group_disabled(self):
group = 'foo'
+ params = {'security_groups': [{'name': group}]}
old_create = nova.compute.api.API.create
def create(*args, **kwargs):
@@ -1785,7 +1785,57 @@ class ServersControllerCreateTest(test.TestCase):
return old_create(*args, **kwargs)
self.stubs.Set(nova.compute.api.API, 'create', create)
- self._test_create_security_group(group)
+ self._test_create_extra(params)
+
+ def test_create_instance_with_volumes_enabled(self):
+ self.ext_mgr.extensions = {'os-volumes': 'fake'}
+ bdm = [{'device_name': 'foo'}]
+ params = {'block_device_mapping': bdm}
+ old_create = nova.compute.api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['block_device_mapping'], bdm)
+ 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_disabled(self):
+ bdm = [{'device_name': 'foo'}]
+ params = {'block_device_mapping': bdm}
+ old_create = nova.compute.api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['block_device_mapping'], None)
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(nova.compute.api.API, 'create', create)
+ self._test_create_extra(params)
+
+ def test_create_instance_with_user_data_enabled(self):
+ self.ext_mgr.extensions = {'os-user-data': 'fake'}
+ user_data = 'fake'
+ params = {'user_data': user_data}
+ old_create = nova.compute.api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['user_data'], user_data)
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(nova.compute.api.API, 'create', create)
+ self._test_create_extra(params)
+
+ def test_create_instance_with_user_data_disabled(self):
+ user_data = 'fake'
+ params = {'user_data': user_data}
+ old_create = nova.compute.api.API.create
+
+ def create(*args, **kwargs):
+ self.assertEqual(kwargs['user_data'], None)
+ return old_create(*args, **kwargs)
+
+ self.stubs.Set(nova.compute.api.API, 'create', create)
+ self._test_create_extra(params)
def test_create_instance_with_access_ip(self):
# proper local hrefs must start with 'http://localhost/v2/'