Disable colored output for tests, when not tty
Change-Id: I73f01bd3a8e7caa00c75b845b9e61d3cb0f34877
Signed-off-by: Peter Ginchev <pginchev@cisco.com>
diff --git a/test/framework.py b/test/framework.py
index 8bfb551..5cf2a25 100644
--- a/test/framework.py
+++ b/test/framework.py
@@ -9,6 +9,7 @@
logging.getLogger("scapy.runtime").setLevel(logging.ERROR)
import os
+import sys
import subprocess
import unittest
from inspect import getdoc
@@ -21,11 +22,19 @@
# These variables (RED, GREEN, YELLOW and LPURPLE) are used to configure
# the color of the text to be printed in the terminal. Variable END is used
# to revert the text color to the default one.
-RED = '\033[91m'
-GREEN = '\033[92m'
-YELLOW = '\033[93m'
-LPURPLE = '\033[94m'
-END = '\033[0m'
+if hasattr(sys.stdout, 'isatty') and sys.stdout.isatty():
+ RED = '\033[91m'
+ GREEN = '\033[92m'
+ YELLOW = '\033[93m'
+ LPURPLE = '\033[94m'
+ END = '\033[0m'
+else:
+ RED = ''
+ GREEN = ''
+ YELLOW = ''
+ LPURPLE = ''
+ END = ''
+
## Private class to create packet info object.
#