[tor-commits] [stem/master] Only coloring test output if it's to a terminal

atagar at torproject.org atagar at torproject.org
Mon Apr 16 01:42:03 UTC 2012


commit 06aa889eddea7b608fd5d776ff2c1a1cd90d3ab4
Author: Damian Johnson <atagar at torproject.org>
Date:   Sun Apr 15 18:40:01 2012 -0700

    Only coloring test output if it's to a terminal
    
    Dropping the '--no-color' argument in favor of a builtin check for if our
    output is going to a tty teminal or not. This is the same trick that git does
    for its 'color.ui = true' setting.
---
 run_tests.py      |    8 +++++---
 test/settings.cfg |    1 -
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/run_tests.py b/run_tests.py
index d6a0a52..d764d54 100755
--- a/run_tests.py
+++ b/run_tests.py
@@ -44,7 +44,7 @@ import stem.util.log as log
 import stem.util.term as term
 
 OPT = "uic:l:t:h"
-OPT_EXPANDED = ["unit", "integ", "config=", "targets=", "log=", "tor=", "no-color", "help"]
+OPT_EXPANDED = ["unit", "integ", "config=", "targets=", "log=", "tor=", "help"]
 DIVIDER = "=" * 70
 
 CONFIG = stem.util.conf.config_dict("test", {
@@ -128,6 +128,10 @@ def load_user_configuration(test_config):
     print "%s (for usage provide --help)" % exc
     sys.exit(1)
   
+  # suppress color output if our output is being piped
+  if not sys.stdout.isatty():
+    arg_overrides["argument.no_color"] = "true"
+  
   for opt, arg in opts:
     if opt in ("-u", "--unit"):
       arg_overrides["argument.unit"] = "true"
@@ -154,8 +158,6 @@ def load_user_configuration(test_config):
       arg_overrides["argument.log"] = arg.upper()
     elif opt in ("--tor"):
       arg_overrides["argument.tor"] = arg
-    elif opt in ("--no-color"):
-      arg_overrides["argument.no_color"] = "true"
     elif opt in ("-h", "--help"):
       # Prints usage information and quits. This includes a listing of the
       # valid integration targets.
diff --git a/test/settings.cfg b/test/settings.cfg
index b55dc7e..74bb933 100644
--- a/test/settings.cfg
+++ b/test/settings.cfg
@@ -17,7 +17,6 @@ msg.help
 |  -l, --log RUNLEVEL    includes logging output with test results, runlevels:
 |                          TRACE, DEBUG, INFO, NOTICE, WARN, ERROR
 |      --tor PATH        custom tor binary to run testing against
-|      --no-color        displays testing output without color
 |  -h, --help            presents this help
 |
 |  Integration targets:



More information about the tor-commits mailing list