summaryrefslogtreecommitdiffstats
path: root/js/src/tests/lib/terminal_unix.py
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/lib/terminal_unix.py')
-rw-r--r--js/src/tests/lib/terminal_unix.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/js/src/tests/lib/terminal_unix.py b/js/src/tests/lib/terminal_unix.py
new file mode 100644
index 000000000..9a3458008
--- /dev/null
+++ b/js/src/tests/lib/terminal_unix.py
@@ -0,0 +1,38 @@
+import sys
+
+class Terminal(object):
+ COLOR = {
+ 'red': '31',
+ 'green': '32',
+ 'blue': '34',
+ 'gray': '37'
+ }
+ NORMAL_INTENSITY = '1'
+ BRIGHT_INTENSITY = '2'
+ ESCAPE = '\x1b['
+ RESET = '0'
+ SEPARATOR = ';'
+ COLOR_CODE = 'm'
+ CLEAR_RIGHT_CODE = 'K'
+
+ @classmethod
+ def set_color(cls, color):
+ """
+ color: str - color definition string
+ """
+ mod = Terminal.NORMAL_INTENSITY
+ if color.startswith('bright'):
+ mod = Terminal.BRIGHT_INTENSITY
+ color = color[len('bright'):]
+ color_code = Terminal.COLOR[color]
+
+ sys.stdout.write(cls.ESCAPE + color_code + cls.SEPARATOR + mod
+ + cls.COLOR_CODE)
+
+ @classmethod
+ def reset_color(cls):
+ sys.stdout.write(cls.ESCAPE + cls.RESET + cls.COLOR_CODE)
+
+ @classmethod
+ def clear_right(cls):
+ sys.stdout.write(cls.ESCAPE + cls.CLEAR_RIGHT_CODE)