summaryrefslogtreecommitdiffstats
path: root/nova/tests
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2012-08-07 22:43:42 +0000
committerGerrit Code Review <review@openstack.org>2012-08-07 22:43:42 +0000
commit2dfee64d77aa800cc2f2d6ea7120322ffcec2207 (patch)
treed69deac477773410102e8db1913bbfdc54c2a745 /nova/tests
parentf86a44e1bd1c32e521f8d28794d1c0569540cbb3 (diff)
parent26b1523eba3805a497c23e3b6707a85670ee11be (diff)
Merge "Return 409 error if get_vnc_console is called before VM is created"
Diffstat (limited to 'nova/tests')
-rw-r--r--nova/tests/api/openstack/compute/contrib/test_consoles.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/nova/tests/api/openstack/compute/contrib/test_consoles.py b/nova/tests/api/openstack/compute/contrib/test_consoles.py
index 8d727a556..887092806 100644
--- a/nova/tests/api/openstack/compute/contrib/test_consoles.py
+++ b/nova/tests/api/openstack/compute/contrib/test_consoles.py
@@ -31,6 +31,10 @@ def fake_get_vnc_console_invalid_type(self, _context,
raise exception.ConsoleTypeInvalid(console_type=_console_type)
+def fake_get_vnc_console_not_ready(self, _context, instance, _console_type):
+ raise exception.InstanceNotReady(instance_id=instance["uuid"])
+
+
def fake_get_vnc_console_not_found(self, _context, instance, _console_type):
raise exception.InstanceNotFound(instance_id=instance["uuid"])
@@ -64,6 +68,19 @@ class ConsolesExtensionTest(test.TestCase):
self.assertEqual(output,
{u'console': {u'url': u'http://fake', u'type': u'novnc'}})
+ def test_get_vnc_console_not_ready(self):
+ self.stubs.Set(compute.API, 'get_vnc_console',
+ fake_get_vnc_console_not_ready)
+ body = {'os-getVNCConsole': {'type': 'novnc'}}
+ req = webob.Request.blank('/v2/fake/servers/1/action')
+ req.method = "POST"
+ req.body = jsonutils.dumps(body)
+ req.headers["content-type"] = "application/json"
+
+ res = req.get_response(fakes.wsgi_app())
+ output = jsonutils.loads(res.body)
+ self.assertEqual(res.status_int, 409)
+
def test_get_vnc_console_no_type(self):
self.stubs.Set(compute.API, 'get', fake_get)
self.stubs.Set(compute.API, 'get_vnc_console',