tests: Replace use of CONF with monkey patching
Per the docs, the 'nova-console' service is "a XenAPI-specific service that most recent VNC proxy architectures do not use." [1] This service provides a config option - 'console_driver' - which only has two valid values, one of which was a fake used in testing. There are better ways to stub out code during tests that by setting configuration options, namely through the use of monkey patching. Do this, paving the way for deprecation and eventual removal of this configuration option. [1] https://github.com/openstack/openstack-manuals/tree/4b1e8f1/doc\ /admin-guide/source/compute-remote-console-access.rst Change-Id: Ibfc957c40dafb1ecb35b8658ab92b922b1f39a1a
This commit is contained in:
parent
45f14c2018
commit
dbbad4fc54
|
@ -17,10 +17,10 @@
|
|||
|
||||
from oslo_log import log as logging
|
||||
import oslo_messaging as messaging
|
||||
from oslo_utils import importutils
|
||||
|
||||
from nova.compute import rpcapi as compute_rpcapi
|
||||
import nova.conf
|
||||
from nova.console import xvp
|
||||
from nova import exception
|
||||
from nova.i18n import _LI
|
||||
from nova import manager
|
||||
|
@ -41,10 +41,8 @@ class ConsoleProxyManager(manager.Manager):
|
|||
|
||||
target = messaging.Target(version='2.0')
|
||||
|
||||
def __init__(self, console_driver=None, *args, **kwargs):
|
||||
if not console_driver:
|
||||
console_driver = CONF.console_driver
|
||||
self.driver = importutils.import_object(console_driver)
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.driver = xvp.XVPConsoleProxy()
|
||||
super(ConsoleProxyManager, self).__init__(service_name='console',
|
||||
*args, **kwargs)
|
||||
self.driver.host = self.host
|
||||
|
|
|
@ -13,8 +13,11 @@
|
|||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
import fixtures
|
||||
|
||||
from nova.console import manager as console_manager # noqa - only for cfg
|
||||
from nova.tests.functional.api_sample_tests import test_servers
|
||||
from nova.tests.unit import fake_xvp_console_proxy
|
||||
|
||||
|
||||
class ConsolesSamplesJsonTest(test_servers.ServersSampleBase):
|
||||
|
@ -24,7 +27,9 @@ class ConsolesSamplesJsonTest(test_servers.ServersSampleBase):
|
|||
super(ConsolesSamplesJsonTest, self).setUp()
|
||||
self.flags(console_public_hostname='fake')
|
||||
self.flags(console_host='fake')
|
||||
self.flags(console_driver='nova.console.fake.FakeConsoleProxy')
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
'nova.console.manager.xvp.XVPConsoleProxy',
|
||||
fake_xvp_console_proxy.FakeConsoleProxy))
|
||||
self.console = self.start_service('console', host='fake')
|
||||
|
||||
def _create_consoles(self, server_uuid):
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
|
||||
"""Tests For Console proxy."""
|
||||
|
||||
import fixtures
|
||||
import mock
|
||||
|
||||
from nova.compute import rpcapi as compute_rpcapi
|
||||
|
@ -28,6 +29,7 @@ from nova import exception
|
|||
from nova import objects
|
||||
from nova import test
|
||||
from nova.tests.unit import fake_instance
|
||||
from nova.tests.unit import fake_xvp_console_proxy
|
||||
|
||||
CONF = nova.conf.CONF
|
||||
|
||||
|
@ -36,7 +38,9 @@ class ConsoleTestCase(test.TestCase):
|
|||
"""Test case for console proxy manager."""
|
||||
def setUp(self):
|
||||
super(ConsoleTestCase, self).setUp()
|
||||
self.flags(console_driver='nova.console.fake.FakeConsoleProxy')
|
||||
self.useFixture(fixtures.MonkeyPatch(
|
||||
'nova.console.manager.xvp.XVPConsoleProxy',
|
||||
fake_xvp_console_proxy.FakeConsoleProxy))
|
||||
self.console = console_manager.ConsoleProxyManager()
|
||||
self.user_id = 'fake'
|
||||
self.project_id = 'fake'
|
||||
|
|
Loading…
Reference in New Issue