From a945d1a30478c644d307c77a8a85f3a08e5a834e Mon Sep 17 00:00:00 2001 From: Isaku Yamahata Date: Thu, 23 Feb 2012 01:55:30 +0900 Subject: [PATCH] unittests: setup FLAGS.state_path properly: bug 938637 This patch fixes bug 938637 Quantum unittests doesn't pass with plugin (openvswitch, linuxbridge) in venv as follows. This is because config file under /etc/ can't be find due to FLAGS.state_path points to which can be different from . Set FLAGS.state_path to when quantum unit tests. $ PLUGIN_DIR=quantum/plugins/openvswitch ./run_tests.sh -V ActionExtensionTest test_extended_action_for_adding_extra_data (quantum.tests.unit.test_extensions.ActionExtensionTest)ERROR ====================================================================== ERROR: test_extended_action_for_adding_extra_data (quantum.tests.unit.test_extensions.ActionExtensionTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/quantum/tests/unit/test_extensions.py", line 212, in setUp self.extension_app = setup_extensions_test_app() File "/quantum-src/quantum/tests/unit/test_extensions.py", line 474, in setup_extensions_test_app return TestApp(setup_extensions_middleware(extension_manager)) File "/quantum-src/quantum/tests/unit/test_extensions.py", line 469, in setup_extensions_middleware conf, app = config.load_paste_app('extensions_test_app', options, None) File "/quantum-src/.venv/src/python-quantumclient/quantum/common/config.py", line 316, in load_paste_app conf_file, conf = load_paste_config(app_name, options, args) File "/quantum-src/.venv/src/python-quantumclient/quantum/common/config.py", line 286, in load_paste_config "Cannot load application %s" % app_name) RuntimeError: Unable to locate any configuration file. Cannot load application extensions_test_app -------------------- >> begin captured logging << -------------------- quantum.extensions.extensions: INFO: Initializing extension manager. quantum.extensions.extensions: INFO: Loading extension file: foxinsocks.py quantum.extensions.extensions: DEBUG: Ext name: Fox In Socks quantum.extensions.extensions: DEBUG: Ext alias: FOXNSOX quantum.extensions.extensions: DEBUG: Ext description: The Fox In Socks Extension quantum.extensions.extensions: DEBUG: Ext namespace: http://www.fox.in.socks/api/ext/pie/v1.0 quantum.extensions.extensions: DEBUG: Ext updated: 2011-01-22T13:25:27-06:00 quantum.extensions.extensions: WARNING: Loaded extension: FOXNSOX quantum.extensions.extensions: INFO: Loading extension file: __init__.py quantum.extensions.extensions: INFO: Loading extension file: foxinsocks.pyc quantum.extensions.extensions: INFO: Loading extension file: __init__.pyc --------------------- >> end captured logging << --------------------- Change-Id: I3b8e1414b22b1a526468488fe885ac39f2e6c420 --- quantum/tests/unit/__init__.py | 8 ++++++++ quantum/tests/unit/test_extensions.py | 8 -------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/quantum/tests/unit/__init__.py b/quantum/tests/unit/__init__.py index 50375f405..feeb9d3e9 100644 --- a/quantum/tests/unit/__init__.py +++ b/quantum/tests/unit/__init__.py @@ -22,6 +22,14 @@ import __builtin__ import unittest setattr(__builtin__, '_', lambda x: x) +import os +from quantum.common import flags + +FLAGS = flags.FLAGS +reldir = os.path.join(os.path.dirname(__file__), '..', '..', '..') +absdir = os.path.abspath(reldir) +FLAGS.state_path = absdir + class BaseTest(unittest.TestCase): diff --git a/quantum/tests/unit/test_extensions.py b/quantum/tests/unit/test_extensions.py index cc5fe4b31..5a60fb13a 100644 --- a/quantum/tests/unit/test_extensions.py +++ b/quantum/tests/unit/test_extensions.py @@ -41,14 +41,6 @@ from quantum.extensions.extensions import (ExtensionManager, ExtensionMiddleware) LOG = logging.getLogger('test_extensions') - -from quantum.common import flags -FLAGS = flags.FLAGS - -quantum_dir = os.path.dirname(os.path.abspath(quantum.__file__)) -src_dir = os.path.abspath(os.path.join(quantum_dir, "..")) -FLAGS.state_path = src_dir - test_conf_file = config.find_config_file({}, None, "quantum.conf.test") extensions_path = ':'.join(quantum.tests.unit.extensions.__path__) -- 2.45.2