Merge "pbr/testr_command.py: Add logging"
This commit is contained in:
commit
adb0d20ec7
|
@ -40,11 +40,14 @@ package metadata.
|
|||
|
||||
from distutils import cmd
|
||||
import distutils.errors
|
||||
import logging
|
||||
import os
|
||||
import sys
|
||||
|
||||
from testrepository import commands
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class Testr(cmd.Command):
|
||||
|
||||
|
@ -58,11 +61,13 @@ class Testr(cmd.Command):
|
|||
('coverage-package-name=', None, "Use this name for coverage package"),
|
||||
('slowest', None, "Show slowest test times after tests complete."),
|
||||
('no-parallel', None, "Run testr serially"),
|
||||
('log-level=', 'l', "Log level (default: info)"),
|
||||
]
|
||||
|
||||
boolean_options = ['coverage', 'slowest', 'no_parallel']
|
||||
|
||||
def _run_testr(self, *args):
|
||||
logger.debug("_run_testr called with args = %r", args)
|
||||
return commands.run_argv([sys.argv[0]] + list(args),
|
||||
sys.stdin, sys.stdout, sys.stderr)
|
||||
|
||||
|
@ -73,17 +78,26 @@ class Testr(cmd.Command):
|
|||
self.slowest = None
|
||||
self.coverage_package_name = None
|
||||
self.no_parallel = None
|
||||
self.log_level = 'info'
|
||||
|
||||
def finalize_options(self):
|
||||
self.log_level = getattr(
|
||||
logging,
|
||||
self.log_level.upper(),
|
||||
logging.INFO)
|
||||
logging.basicConfig(level=self.log_level)
|
||||
logger.debug("finalize_options called")
|
||||
if self.testr_args is None:
|
||||
self.testr_args = []
|
||||
else:
|
||||
self.testr_args = self.testr_args.split()
|
||||
if self.omit:
|
||||
self.omit = "--omit=%s" % self.omit
|
||||
logger.debug("finalize_options: self.__dict__ = %r", self.__dict__)
|
||||
|
||||
def run(self):
|
||||
"""Set up testr repo, then run testr"""
|
||||
logger.debug("run called")
|
||||
if not os.path.isdir(".testrepository"):
|
||||
self._run_testr("init")
|
||||
|
||||
|
@ -103,6 +117,7 @@ class Testr(cmd.Command):
|
|||
self._coverage_after()
|
||||
|
||||
def _coverage_before(self):
|
||||
logger.debug("_coverage_before called")
|
||||
package = self.distribution.get_name()
|
||||
if package.startswith('python-'):
|
||||
package = package[7:]
|
||||
|
@ -112,7 +127,9 @@ class Testr(cmd.Command):
|
|||
package = self.coverage_package_name
|
||||
options = "--source %s --parallel-mode" % self.coverage_package_name
|
||||
os.environ['PYTHON'] = ("coverage run %s" % options)
|
||||
logger.debug("os.environ['PYTHON'] = %r", os.environ['PYTHON'])
|
||||
|
||||
def _coverage_after(self):
|
||||
logger.debug("_coverage_after called")
|
||||
os.system("coverage combine")
|
||||
os.system("coverage html -d ./cover %s" % self.omit)
|
||||
|
|
Loading…
Reference in New Issue