Adds a flag to redirect STDERR when running run_tests.py. Defaults to a truncate-on-write logfile named run_tests.err.log. Adds ignore rule for generated errlog file.

This commit is contained in:
Jay Pipes 2010-07-16 10:03:22 -05:00
parent 67d4e16a8c
commit c3505507a5
2 changed files with 10 additions and 0 deletions

1
.bzrignore Normal file
View File

@ -0,0 +1 @@
run_tests.err.log

View File

@ -39,6 +39,7 @@ Due to our use of multiprocessing it we frequently get some ignorable
"""
import __main__
import os
import sys
from nova import vendor
@ -66,6 +67,9 @@ FLAGS = flags.FLAGS
flags.DEFINE_bool('flush_db', True,
'Flush the database before running fake tests')
flags.DEFINE_string('tests_stderr', 'run_tests.err.log',
'Path to where to pipe STDERR during test runs. Default = "run_tests.err.log"')
if __name__ == '__main__':
OptionsClass = twistd.WrapTwistedOptions(trial_script.Options)
config = OptionsClass()
@ -85,6 +89,11 @@ if __name__ == '__main__':
else:
from nova.tests.real_flags import *
# Establish redirect for STDERR
sys.stderr.flush()
err = open(FLAGS.tests_stderr, 'w+', 0)
os.dup2(err.fileno(), sys.stderr.fileno())
if len(argv) == 1 and len(config['tests']) == 0:
# If no tests were specified run the ones imported in this file
# NOTE(termie): "tests" is not a flag, just some Trial related stuff