Fix test discovery for api and functional paths
The use of the builtin unittest test loader was silently dropping tests
that couldn't be imported.
This change also drops the retargetable path from discovery in the api
path due to a previously-masked configuration problem, and fixes an
invalid import in a functional testing fixture module.
Fullstack tests are also disabled temporarily pending a fix for #1446261.
Note:
- fullstack tests are not really working in Kilo, so it's fine to
disable them for the branch.
Change-Id: Ie44e45c117bd864538e7919dfcf499091fde7752
Related-Bug: #1440834
Related-Bug: #1443480
Closes-Bug: #1446405
(cherry picked from commit 4000b18275
)
This commit is contained in:
parent
5eff0019dc
commit
ae5ffa3f9f
|
@ -1,34 +0,0 @@
|
|||
# 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.
|
||||
|
||||
import unittest
|
||||
|
||||
|
||||
# Allow the retargetable and tempest api tests to be executed as part
|
||||
# of the same job by ensuring that tests from both paths are discovered.
|
||||
|
||||
|
||||
def _discover(loader, path, pattern):
|
||||
return loader.discover(path, pattern=pattern, top_level_dir=".")
|
||||
|
||||
|
||||
def load_tests(_, tests, pattern):
|
||||
suite = unittest.TestSuite()
|
||||
suite.addTests(tests)
|
||||
|
||||
loader = unittest.loader.TestLoader()
|
||||
suite.addTests(_discover(loader, "./neutron/tests/api", pattern))
|
||||
suite.addTests(_discover(loader,
|
||||
"./neutron/tests/retargetable",
|
||||
pattern))
|
||||
|
||||
return suite
|
|
@ -19,9 +19,9 @@ import fixtures
|
|||
import netaddr
|
||||
import six
|
||||
|
||||
from neutron.agent.common import ovs_lib
|
||||
from neutron.agent.linux import bridge_lib
|
||||
from neutron.agent.linux import ip_lib
|
||||
from neutron.agent.linux import ovs_lib
|
||||
from neutron.common import constants as n_const
|
||||
from neutron.openstack.common import uuidutils
|
||||
from neutron.tests import base as tests_base
|
||||
|
|
|
@ -18,21 +18,17 @@ environmental requirements to the functional path are marked for
|
|||
discovery.
|
||||
"""
|
||||
|
||||
import unittest
|
||||
import os.path
|
||||
|
||||
|
||||
def _discover(loader, path, pattern):
|
||||
return loader.discover(path, pattern=pattern, top_level_dir=".")
|
||||
|
||||
|
||||
def load_tests(_, tests, pattern):
|
||||
suite = unittest.TestSuite()
|
||||
suite.addTests(tests)
|
||||
|
||||
loader = unittest.loader.TestLoader()
|
||||
suite.addTests(_discover(loader, "./neutron/tests/functional", pattern))
|
||||
suite.addTests(_discover(loader, "./neutron/tests/fullstack", pattern))
|
||||
suite.addTests(_discover(loader, "./neutron/tests/retargetable",
|
||||
pattern))
|
||||
|
||||
return suite
|
||||
def load_tests(loader, tests, pattern):
|
||||
this_dir = os.path.dirname(__file__)
|
||||
parent_dir = os.path.dirname(this_dir)
|
||||
target_dirs = [
|
||||
this_dir,
|
||||
os.path.join(parent_dir, 'retargetable'),
|
||||
]
|
||||
for start_dir in target_dirs:
|
||||
new_tests = loader.discover(start_dir=start_dir, pattern=pattern)
|
||||
tests.addTests(new_tests)
|
||||
return tests
|
||||
|
|
Loading…
Reference in New Issue