[Neo-report] r2586 gregory - in /trunk: neo/tests/ neo/tests/zodb/ tools/

nobody at svn.erp5.org nobody at svn.erp5.org
Wed Jan 5 15:45:44 CET 2011


Author: gregory
Date: Wed Jan  5 15:45:44 2011
New Revision: 2586

Log:
Don't use runner parameters to change process environment.

- Runner do not define the environment, this is under the responsibility
of the parent script.
- Prefix all environment variables with NEO_TEST to avoid conflicts with
other applications
- Runner display all NEO-related environment variables in the report
- Cosmetic change: increase benchmark runner status column size

Modified:
    trunk/neo/tests/benchmark.py
    trunk/neo/tests/zodb/__init__.py
    trunk/tools/runner

Modified: trunk/neo/tests/benchmark.py
==============================================================================
--- trunk/neo/tests/benchmark.py [iso-8859-1] (original)
+++ trunk/neo/tests/benchmark.py [iso-8859-1] Wed Jan  5 15:45:44 2011
@@ -53,7 +53,7 @@ class BenchmarkRunner(object):
         self._status.append((key, value))
 
     def build_report(self, content):
-        fmt = "%-20s : %s"
+        fmt = "%-25s : %s"
         status = "\n".join([fmt % item for item in [
             ('Title', self._config.title),
             ('Date', datetime.date.today().isoformat()),

Modified: trunk/neo/tests/zodb/__init__.py
==============================================================================
--- trunk/neo/tests/zodb/__init__.py [iso-8859-1] (original)
+++ trunk/neo/tests/zodb/__init__.py [iso-8859-1] Wed Jan  5 15:45:44 2011
@@ -25,10 +25,10 @@ class ZODBTestCase(NEOFunctionalTest):
 
     def setUp(self):
         NEOFunctionalTest.setUp(self)
-        masters = int(os.environ.get('ZODB_MASTERS', 1))
-        storages = int(os.environ.get('ZODB_STORAGES', 1))
-        replicas = int(os.environ.get('ZODB_REPLICAS', 0))
-        partitions = int(os.environ.get('ZODB_PARTITIONS', 1))
+        masters = int(os.environ.get('NEO_TEST_ZODB_MASTERS', 1))
+        storages = int(os.environ.get('NEO_TEST_ZODB_STORAGES', 1))
+        replicas = int(os.environ.get('NEO_TEST_ZODB_REPLICAS', 0))
+        partitions = int(os.environ.get('NEO_TEST_ZODB_PARTITIONS', 1))
         self.neo = NEOCluster(
             db_list=['test_neo%d' % x for x in xrange(storages)],
             partitions=partitions,

Modified: trunk/tools/runner
==============================================================================
--- trunk/tools/runner [iso-8859-1] (original)
+++ trunk/tools/runner [iso-8859-1] Wed Jan  5 15:45:44 2011
@@ -105,22 +105,13 @@ for logger_name in ('NEO', 'CLIENT'):
 class NeoTestRunner(unittest.TestResult):
     """ Custom result class to build report with statistics per module """
 
-    def __init__(self, title, masters, storages, replicas, partitions):
+    def __init__(self, title):
         unittest.TestResult.__init__(self)
         self._title = title
         self.modulesStats = {}
         self.failedImports = {}
         self.lastStart = None
-        self.masters = masters
-        self.storages = storages
-        self.replicas = replicas
-        self.partitions = partitions
         self.temp_directory = tempfile.mkdtemp(prefix='neo_')
-        os.environ['TEMP'] = self.temp_directory
-        os.environ['ZODB_MASTERS'] = str(masters)
-        os.environ['ZODB_STORAGES'] = str(storages)
-        os.environ['ZODB_REPLICAS'] = str(replicas)
-        os.environ['ZODB_PARTITIONS'] = str(partitions)
         print "Base directory : %s" % (self.temp_directory, )
 
     def run(self, name, modules):
@@ -194,11 +185,10 @@ class NeoTestRunner(unittest.TestResult)
     def _buildSummary(self, add_status):
         success = self.testsRun - len(self.errors) - len(self.failures)
         add_status('Directory', self.temp_directory)
-        add_status('Masters', self.masters)
-        add_status('Storages', self.storages)
-        add_status('Replicas', self.replicas)
-        add_status('Partitions', self.partitions)
         add_status('Status', '%.3f%%' % (success * 100.0 / self.testsRun))
+        for var in os.environ.iterkeys():
+            if var.startswith('NEO_TEST'):
+                add_status(var, os.environ[var])
         # visual
         header       = "%25s |   run   | success |  errors |  fails  |   time   \n" % 'Test Module'
         separator    = "%25s-+---------+---------+---------+---------+----------\n" % ('-' * 25)
@@ -280,10 +270,6 @@ class TestRunner(BenchmarkRunner):
         parser.add_option('-f', '--functional', action='store_true')
         parser.add_option('-u', '--unit', action='store_true')
         parser.add_option('-z', '--zodb', action='store_true')
-        parser.add_option('', '--zodb-masters')
-        parser.add_option('', '--zodb-storages')
-        parser.add_option('', '--zodb-replicas')
-        parser.add_option('', '--zodb-partitions')
 
     def load_options(self, options, args):
         if not (options.unit or options.functional or options.zodb or args):
@@ -292,10 +278,6 @@ class TestRunner(BenchmarkRunner):
             unit = options.unit,
             functional = options.functional,
             zodb = options.zodb,
-            zodb_masters = int(options.zodb_masters or 1),
-            zodb_storages = int(options.zodb_storages or 1),
-            zodb_replicas = int(options.zodb_replicas or 0),
-            zodb_partitions = int(options.zodb_partitions or 1),
         )
 
     def start(self):
@@ -303,10 +285,6 @@ class TestRunner(BenchmarkRunner):
         # run requested tests
         runner = NeoTestRunner(
             title=config.title or 'Neo',
-            masters=config.zodb_masters,
-            storages=config.zodb_storages,
-            replicas=config.zodb_replicas,
-            partitions=config.zodb_partitions,
         )
         try:
             if config.unit:




More information about the Neo-report mailing list