summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVishvananda Ishaya <vishvananda@gmail.com>2011-02-23 15:29:02 -0800
committerVishvananda Ishaya <vishvananda@gmail.com>2011-02-23 15:29:02 -0800
commit5e2f82b1487b8f8e43539d0c71466fbbfed23121 (patch)
tree715ce0c37eb031577b6642a940ad3fb5dfda3512
parentf4c95e1f180157ad91e9a3b21777a376e02a09d5 (diff)
downloadnova-5e2f82b1487b8f8e43539d0c71466fbbfed23121.tar.gz
nova-5e2f82b1487b8f8e43539d0c71466fbbfed23121.tar.xz
nova-5e2f82b1487b8f8e43539d0c71466fbbfed23121.zip
revert logfile redirection and make colors work by temporarily switching stdout
-rw-r--r--nova/tests/fake_flags.py1
-rw-r--r--run_tests.py16
-rwxr-xr-xrun_tests.sh4
3 files changed, 11 insertions, 10 deletions
diff --git a/nova/tests/fake_flags.py b/nova/tests/fake_flags.py
index 575fefff6..2b1919407 100644
--- a/nova/tests/fake_flags.py
+++ b/nova/tests/fake_flags.py
@@ -41,4 +41,3 @@ FLAGS.iscsi_num_targets = 8
FLAGS.verbose = True
FLAGS.sql_connection = 'sqlite:///tests.sqlite'
FLAGS.use_ipv6 = True
-FLAGS.logfile = 'tests.log'
diff --git a/run_tests.py b/run_tests.py
index 877849ab5..2c04a0641 100644
--- a/run_tests.py
+++ b/run_tests.py
@@ -97,7 +97,7 @@ class _AnsiColorizer(object):
try:
return curses.tigetnum("colors") > 2
except curses.error:
- curses.setupterm(fd=stream.fileno())
+ curses.setupterm()
return curses.tigetnum("colors") > 2
except:
raise
@@ -122,13 +122,13 @@ class _Win32Colorizer(object):
See _AnsiColorizer docstring.
"""
def __init__(self, stream):
- from win32console import GetStdHandle, STD_ERROR_HANDLE, \
+ from win32console import GetStdHandle, STD_OUT_HANDLE, \
FOREGROUND_RED, FOREGROUND_BLUE, FOREGROUND_GREEN, \
FOREGROUND_INTENSITY
red, green, blue, bold = (FOREGROUND_RED, FOREGROUND_GREEN,
FOREGROUND_BLUE, FOREGROUND_INTENSITY)
self.stream = stream
- self.screenBuffer = GetStdHandle(STD_ERROR_HANDLE)
+ self.screenBuffer = GetStdHandle(STD_OUT_HANDLE)
self._colors = {
'normal': red | green | blue,
'red': red | bold,
@@ -144,7 +144,7 @@ class _Win32Colorizer(object):
try:
import win32console
screenBuffer = win32console.GetStdHandle(
- win32console.STD_ERROR_HANDLE)
+ win32console.STD_OUT_HANDLE)
except ImportError:
return False
import pywintypes
@@ -185,12 +185,14 @@ class NovaTestResult(result.TextTestResult):
result.TextTestResult.__init__(self, *args, **kw)
self._last_case = None
self.colorizer = None
+ # NOTE(vish): reset stdout for the terminal check
+ stdout = sys.stdout
+ sys.stdout = sys.__stdout__
for colorizer in [_Win32Colorizer, _AnsiColorizer, _NullColorizer]:
- # NOTE(vish): nose does funky stuff with stdout, so use stderr
- # to setup the colorizer
- if colorizer.supported(sys.stderr):
+ if colorizer.supported():
self.colorizer = colorizer(self.stream)
break
+ sys.stdout = stdout
def getDescription(self, test):
return str(test)
diff --git a/run_tests.sh b/run_tests.sh
index 7aab9ecd9..d4586a57e 100755
--- a/run_tests.sh
+++ b/run_tests.sh
@@ -39,12 +39,12 @@ done
function run_tests {
# Just run the test suites in current environment
- ${wrapper} $NOSETESTS
+ ${wrapper} $NOSETESTS 2> run_tests.log
# If we get some short import error right away, print the error log directly
RESULT=$?
if [ "$RESULT" -ne "0" ];
then
- ERRSIZE=`wc -l run_tests.err.log | awk '{print \$1}'`
+ ERRSIZE=`wc -l run_tests.log | awk '{print \$1}'`
if [ "$ERRSIZE" -lt "40" ];
then
cat run_tests.err.log