summaryrefslogtreecommitdiff
path: root/nova/tests/console
diff options
context:
space:
mode:
authorRussell Bryant <rbryant@redhat.com>2012-08-15 17:08:15 -0400
committerRussell Bryant <rbryant@redhat.com>2012-08-16 12:03:01 -0400
commitea54ad3dd2053404cb2fbbaa1a3613a5dece6345 (patch)
treefdc626eed7eb698b0b1f17e8ff6d7987539640f0 /nova/tests/console
parent574a78f066da5032c53069bc7a8be8fe14ea9d04 (diff)
downloadnova-ea54ad3dd2053404cb2fbbaa1a3613a5dece6345.tar.gz
Fix use of non-existant var pool.
This code was using pool, but this variable did not exist. It was erroneously removed in f50ce35c9cf2e05d205485586da1cb6d5433ba56. This patch fixes the bug, as well as introduces unit tests for this API that would have caught the problem. Part of bug 1037183. Change-Id: I0784aa314a0224198049dbcbe160084bdd1deee1
Diffstat (limited to 'nova/tests/console')
-rw-r--r--nova/tests/console/test_console.py70
1 files changed, 69 insertions, 1 deletions
diff --git a/nova/tests/console/test_console.py b/nova/tests/console/test_console.py
index 8f9b87fa99..f1e1edc542 100644
--- a/nova/tests/console/test_console.py
+++ b/nova/tests/console/test_console.py
@@ -18,11 +18,14 @@
"""Tests For Console proxy."""
+from nova.console import api as console_api
+from nova.console import rpcapi as console_rpcapi
from nova import context
from nova import db
from nova import exception
from nova import flags
from nova.openstack.common import importutils
+from nova.openstack.common import rpc
from nova import test
FLAGS = flags.FLAGS
@@ -30,7 +33,7 @@ flags.DECLARE('console_driver', 'nova.console.manager')
class ConsoleTestCase(test.TestCase):
- """Test case for console proxy"""
+ """Test case for console proxy manager"""
def setUp(self):
super(ConsoleTestCase, self).setUp()
self.flags(console_driver='nova.console.fake.FakeConsoleProxy',
@@ -116,3 +119,68 @@ class ConsoleTestCase(test.TestCase):
self.context,
console_id)
db.instance_destroy(self.context, instance['uuid'])
+
+
+class ConsoleAPITestCase(test.TestCase):
+ """Test case for console API"""
+ def setUp(self):
+ super(ConsoleAPITestCase, self).setUp()
+
+ self.context = context.RequestContext('fake', 'fake')
+ self.console_api = console_api.API()
+ self.fake_uuid = '00000000-aaaa-bbbb-cccc-000000000000'
+ self.fake_instance = {
+ 'id': 1,
+ 'uuid': self.fake_uuid,
+ 'host': 'fake_host'
+ }
+ self.fake_console = {
+ 'pool': {'host': 'fake_host'},
+ 'id': 'fake_id'
+ }
+
+ def _fake_cast(_ctxt, _topic, _msg):
+ pass
+ self.stubs.Set(rpc, 'cast', _fake_cast)
+
+ def _fake_db_console_get(_ctxt, _console_uuid, _instance_uuid):
+ return self.fake_console
+ self.stubs.Set(db, 'console_get', _fake_db_console_get)
+
+ def _fake_db_console_get_all_by_instance(_ctxt, _instance_uuid):
+ return [self.fake_console]
+ self.stubs.Set(db, 'console_get_all_by_instance',
+ _fake_db_console_get_all_by_instance)
+
+ def _fake_instance_get_by_uuid(_ctxt, _instance_uuid):
+ return self.fake_instance
+ self.stubs.Set(db, 'instance_get_by_uuid', _fake_instance_get_by_uuid)
+
+ def test_get_consoles(self):
+ console = self.console_api.get_consoles(self.context, self.fake_uuid)
+ self.assertEqual(console, [self.fake_console])
+
+ def test_get_console(self):
+ console = self.console_api.get_console(self.context, self.fake_uuid,
+ 'fake_id')
+ self.assertEqual(console, self.fake_console)
+
+ def test_delete_console(self):
+ self.mox.StubOutWithMock(console_rpcapi.ConsoleAPI, 'remove_console')
+
+ console_rpcapi.ConsoleAPI.remove_console(self.context, 'fake_id')
+
+ self.mox.ReplayAll()
+
+ self.console_api.delete_console(self.context, self.fake_uuid,
+ 'fake_id')
+
+ def test_create_console(self):
+ self.mox.StubOutWithMock(console_rpcapi.ConsoleAPI, 'add_console')
+
+ console_rpcapi.ConsoleAPI.add_console(self.context,
+ self.fake_instance['id'])
+
+ self.mox.ReplayAll()
+
+ self.console_api.create_console(self.context, self.fake_uuid)