Because we have our own more-updated unittest.py in test_utils, any unit tests that
use it will not get executed by unittest_suite. As a quick fix, just extend the
unittest_suite.py script to load any unit test based on either the stdlib version or
our custom one.

Risk: Low
Visibility: Fixes up the unit test executor

Signed-off-by: John Admanski <jadmanski@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@4036 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/utils/unittest_suite.py b/utils/unittest_suite.py
index 82422a7..d9283cc 100755
--- a/utils/unittest_suite.py
+++ b/utils/unittest_suite.py
@@ -3,7 +3,7 @@
 import os, sys, unittest, optparse
 import common
 from autotest_lib.utils import parallel
-
+from autotest_lib.client.common_lib.test_utils import unittest as custom_unittest
 
 parser = optparse.OptionParser()
 parser.add_option("-r", action="store", type="string", dest="start",
@@ -45,14 +45,15 @@
     print "Running %s" % '.'.join(mod_names)
     mod = common.setup_modules.import_module(mod_names[-1],
                                              '.'.join(mod_names[:-1]))
-    test = unittest.defaultTestLoader.loadTestsFromModule(mod)
-    suite = unittest.TestSuite(test)
-    runner = unittest.TextTestRunner(verbosity=2)
-    result = runner.run(suite)
-    if result.errors or result.failures:
-        raise TestFailure(
-                "%s had %d failures and %d errors." %
-                ('.'.join(mod_names), len(result.failures), len(result.errors)))
+    for ut_module in [unittest, custom_unittest]:
+        test = ut_module.defaultTestLoader.loadTestsFromModule(mod)
+        suite = ut_module.TestSuite(test)
+        runner = ut_module.TextTestRunner(verbosity=2)
+        result = runner.run(suite)
+        if result.errors or result.failures:
+            msg = '%s had %d failures and %d errors.'
+            msg %= '.'.join(mod_names), len(result.failures), len(result.errors)
+            raise TestFailure(msg)
 
 
 def find_and_run_tests(start, options):