]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Fix test discovery for api and functional paths
authorMaru Newby <marun@redhat.com>
Fri, 17 Apr 2015 23:49:09 +0000 (23:49 +0000)
committerMaru Newby <marun@redhat.com>
Tue, 21 Apr 2015 19:22:45 +0000 (19:22 +0000)
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.

Change-Id: Ie44e45c117bd864538e7919dfcf499091fde7752
Related-Bug: #1440834
Related-Bug: #1443480
Closes-Bug: #1446405

neutron/tests/api/__init__.py
neutron/tests/common/net_helpers.py
neutron/tests/functional/__init__.py

index 0f4ba3681faa78fe50ffa2c991ee66bd236ba154..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
@@ -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
index 551a28ad62b892cbbff87a400b2dad7273bb6781..5d665f7f9cee91c99ce9c995e30172e2bfbf625d 100644 (file)
@@ -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
index 50035b2633fd8d806d10131ca3989b49731b2a45..a2a87e23b26e1544d8a0700bd36cb233db17b708 100644 (file)
@@ -18,21 +18,17 @@ environmental requirements to the functional path are marked for
 discovery.
 """
 
-import unittest
-
-
-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
+import os.path
+
+
+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