nova/nova/tests/unit/fake_xvp_console_proxy.py
Stephen Finucane dbbad4fc54 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
2017-01-06 14:54:47 +00:00

53 lines
1.6 KiB
Python

# Copyright (c) 2010 OpenStack Foundation
# 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.
"""Fake ConsoleProxy driver for tests."""
class FakeConsoleProxy(object):
"""Fake ConsoleProxy driver."""
@property
def console_type(self):
return 'fake'
def setup_console(self, context, console):
"""Sets up actual proxies."""
pass
def teardown_console(self, context, console):
"""Tears down actual proxies."""
pass
def init_host(self):
"""Start up any config'ed consoles on start."""
pass
def generate_password(self, length=8):
"""Returns random console password."""
return 'fakepass'
def get_port(self, context):
"""Get available port for consoles that need one."""
return 5999
def fix_pool_password(self, password):
"""Trim password to length, and any other messaging."""
return password
def fix_console_password(self, password):
"""Trim password to length, and any other messaging."""
return password