diff options
author | Vishvananda Ishaya <vishvananda@gmail.com> | 2011-02-23 11:52:10 -0800 |
---|---|---|
committer | Vishvananda Ishaya <vishvananda@gmail.com> | 2011-02-23 11:52:10 -0800 |
commit | b09534dac05a3b4c127c633d8c050bb310a27166 (patch) | |
tree | 1abf12b20c2f5019d07d81c5b22fce58ef213cff /run_tests.py | |
parent | 1b2d67e769ff1a6fe68a933e8b966d72588ce8ac (diff) | |
download | nova-b09534dac05a3b4c127c633d8c050bb310a27166.tar.gz nova-b09534dac05a3b4c127c633d8c050bb310a27166.tar.xz nova-b09534dac05a3b4c127c633d8c050bb310a27166.zip |
put the redirection back in to run_tests.sh and fix terminal colors by using original stdout
Diffstat (limited to 'run_tests.py')
-rw-r--r-- | run_tests.py | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/run_tests.py b/run_tests.py index 01a1cf8bc..c78f88831 100644 --- a/run_tests.py +++ b/run_tests.py @@ -82,7 +82,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 @@ -107,13 +107,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, @@ -129,7 +129,7 @@ class _Win32Colorizer(object): try: import win32console screenBuffer = win32console.GetStdHandle( - win32console.STD_ERROR_HANDLE) + win32console.STD_OUT_HANDLE) except ImportError: return False import pywintypes @@ -170,12 +170,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) |