summaryrefslogtreecommitdiffstats
path: root/nova/tests
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2012-07-27 15:40:52 +0000
committerGerrit Code Review <review@openstack.org>2012-07-27 15:40:52 +0000
commitb03e0dc04260401b34db0565026105662349f64f (patch)
treef6b817a291325d15a6bd6b3523461dcc1609b426 /nova/tests
parent5110f707dfc31ef756624c48ad7139397692350c (diff)
parenta1aa75383fd4f04d690c547e23f79f51662f6608 (diff)
Merge "Implements config_drive as extension"
Diffstat (limited to 'nova/tests')
-rw-r--r--nova/tests/api/openstack/compute/contrib/test_config_drive.py52
-rw-r--r--nova/tests/api/openstack/compute/test_servers.py9
-rw-r--r--nova/tests/api/openstack/fakes.py3
-rw-r--r--nova/tests/policy.json1
4 files changed, 55 insertions, 10 deletions
diff --git a/nova/tests/api/openstack/compute/contrib/test_config_drive.py b/nova/tests/api/openstack/compute/contrib/test_config_drive.py
new file mode 100644
index 000000000..c246003e5
--- /dev/null
+++ b/nova/tests/api/openstack/compute/contrib/test_config_drive.py
@@ -0,0 +1,52 @@
+# Copyright 2012 OpenStack LLC.
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+import webob
+
+from nova.api.openstack.compute.contrib import config_drive
+from nova import db
+from nova.openstack.common import jsonutils
+from nova import test
+from nova.tests.api.openstack import fakes
+import nova.tests.image.fake
+
+
+class ConfigDriveTest(test.TestCase):
+
+ def setUp(self):
+ super(ConfigDriveTest, self).setUp()
+ self.Controller = config_drive.Controller()
+ fakes.stub_out_networking(self.stubs)
+ fakes.stub_out_rate_limiting(self.stubs)
+ nova.tests.image.fake.stub_out_image_service(self.stubs)
+
+ def test_show(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get())
+ req = webob.Request.blank('/v2/fake/servers/1')
+ req.headers['Content-Type'] = 'application/json'
+ response = req.get_response(fakes.wsgi_app())
+ self.assertEquals(response.status_int, 200)
+ res_dict = jsonutils.loads(response.body)
+ self.assertTrue('config_drive' in res_dict['server'])
+
+ def test_detail_servers(self):
+ self.stubs.Set(db, 'instance_get',
+ fakes.fake_instance_get())
+ req = fakes.HTTPRequest.blank('/v2/fake/servers/detail')
+ res = req.get_response(fakes.wsgi_app())
+ server_dicts = jsonutils.loads(res.body)['servers']
+ for server_dict in server_dicts:
+ self.asserTrue('config_drive' in server_dict)
diff --git a/nova/tests/api/openstack/compute/test_servers.py b/nova/tests/api/openstack/compute/test_servers.py
index 904882bb8..82f5b11a9 100644
--- a/nova/tests/api/openstack/compute/test_servers.py
+++ b/nova/tests/api/openstack/compute/test_servers.py
@@ -200,7 +200,6 @@ class ServersControllerTest(test.TestCase):
"metadata": {
"seq": "1",
},
- "config_drive": None,
"links": [
{
"rel": "self",
@@ -267,7 +266,6 @@ class ServersControllerTest(test.TestCase):
"metadata": {
"seq": "1",
},
- "config_drive": None,
"links": [
{
"rel": "self",
@@ -337,7 +335,6 @@ class ServersControllerTest(test.TestCase):
"metadata": {
"seq": "1",
},
- "config_drive": None,
"links": [
{
"rel": "self",
@@ -3005,7 +3002,6 @@ class ServersViewBuilderTest(test.TestCase):
]
},
"metadata": {},
- "config_drive": None,
"links": [
{
"rel": "self",
@@ -3073,7 +3069,6 @@ class ServersViewBuilderTest(test.TestCase):
]
},
"metadata": {},
- "config_drive": None,
"links": [
{
"rel": "self",
@@ -3217,7 +3212,6 @@ class ServersViewBuilderTest(test.TestCase):
]
},
"metadata": {},
- "config_drive": None,
"links": [
{
"rel": "self",
@@ -3278,7 +3272,6 @@ class ServersViewBuilderTest(test.TestCase):
]
},
"metadata": {},
- "config_drive": None,
"accessIPv4": "1.2.3.4",
"accessIPv6": "",
"links": [
@@ -3341,7 +3334,6 @@ class ServersViewBuilderTest(test.TestCase):
]
},
"metadata": {},
- "config_drive": None,
"accessIPv4": "",
"accessIPv6": "fead::1234",
"links": [
@@ -3408,7 +3400,6 @@ class ServersViewBuilderTest(test.TestCase):
]
},
"metadata": {"Open": "Stack"},
- "config_drive": None,
"links": [
{
"rel": "self",
diff --git a/nova/tests/api/openstack/fakes.py b/nova/tests/api/openstack/fakes.py
index 43ca2aec9..71610c696 100644
--- a/nova/tests/api/openstack/fakes.py
+++ b/nova/tests/api/openstack/fakes.py
@@ -397,7 +397,7 @@ def stub_instance(id, user_id=None, project_id=None, host=None,
flavor_id="1", name=None, key_name='',
access_ipv4=None, access_ipv6=None, progress=0,
auto_disk_config=False, display_name=None,
- include_fake_metadata=True,
+ include_fake_metadata=True, config_drive=None,
power_state=None, nw_cache=None, metadata=None,
security_groups=None):
@@ -446,6 +446,7 @@ def stub_instance(id, user_id=None, project_id=None, host=None,
"launch_index": 0,
"key_name": key_name,
"key_data": key_data,
+ "config_drive": config_drive,
"vm_state": vm_state or vm_states.BUILDING,
"task_state": task_state,
"power_state": power_state,
diff --git a/nova/tests/policy.json b/nova/tests/policy.json
index eec7df112..3e4d166a3 100644
--- a/nova/tests/policy.json
+++ b/nova/tests/policy.json
@@ -83,6 +83,7 @@
"compute_extension:aggregates": [],
"compute_extension:certificates": [],
"compute_extension:cloudpipe": [],
+ "compute_extension:config_drive": [],
"compute_extension:console_output": [],
"compute_extension:consoles": [],
"compute_extension:createserverext": [],