]> git.saurik.com Git - redis.git/commitdiff
some test colorization and some fix
authorantirez <antirez@gmail.com>
Sun, 10 Jul 2011 22:09:56 +0000 (00:09 +0200)
committerantirez <antirez@gmail.com>
Sun, 10 Jul 2011 22:09:56 +0000 (00:09 +0200)
tests/support/test.tcl
tests/test_helper.tcl

index 4819d8a306f807587def044f1746fc3108c3eddd..55236b9a28085e9977233427f2aa542089b04c93 100644 (file)
@@ -49,48 +49,22 @@ proc color_term {} {
     expr {[info exists ::env(TERM)] && [string match *xterm* $::env(TERM)]}
 }
 
-# This is called after the test finished
-proc colored_dot {tags passed} {
+proc colorstr {color str} {
     if {[color_term]} {
-        # Go backward and delete what announc_test function printed.
-        puts -nonewline "\033\[${::backward_count}D\033\[0K\033\[J"
-
-        # Print a coloured char, accordingly to test outcome and tags.
-        if {[lsearch $tags list] != -1} {
-            set colorcode {31}
-            set ch L
-        } elseif {[lsearch $tags hash] != -1} {
-            set colorcode {32}
-            set ch H
-        } elseif {[lsearch $tags set] != -1} {
-            set colorcode {33}
-            set ch S
-        } elseif {[lsearch $tags zset] != -1} {
-            set colorcode {34}
-            set ch Z
-        } elseif {[lsearch $tags basic] != -1} {
-            set colorcode {35}
-            set ch B
-        } else {
-            set colorcode {37}
-            set ch .
+        switch $color {
+            red {set colorcode {31}}
+            green {set colorcode {32}}
+            yellow {set colorcode {33}}
+            blue {set colorcode {34}}
+            magenta {set colorcode {35}}
+            cyan {set colorcode {36}}
+            else {set colorcode {37}}
         }
         if {$colorcode ne {}} {
-            if {$passed} {
-                puts -nonewline "\033\[0;${colorcode};40m"
-            } else {
-                puts -nonewline "\033\[7;${colorcode};40m"
-            }
-            puts -nonewline $ch
-            puts -nonewline "\033\[0m"
-            flush stdout
+            return "\033\[0;${colorcode};40m$str\033\[0m"
         }
     } else {
-        if {$passed} {
-            puts -nonewline .
-        } else {
-            puts -nonewline F
-        }
+        return $str
     }
 }
 
index 4daf36866bd4936f3fcda8175aec4fc6edc81cd7..5be795644412f6718d1cd611a0bef63f500cecf1 100644 (file)
@@ -209,14 +209,21 @@ proc read_from_test_client fd {
     set bytes [gets $fd]
     set payload [read $fd $bytes]
     foreach {status data} $payload break
-    puts "($fd) \[$status\]: $data"
     if {$status eq {ready}} {
+        puts "($fd) \[$status\]: $data"
         signal_idle_client $fd
     } elseif {$status eq {done}} {
         set elapsed [expr {[clock seconds]-$::clients_start_time($fd)}]
-        puts "+++ [llength $::active_clients] units still in execution ($elapsed seconds)."
+        puts "($fd) \[[colorstr yellow $status]\]: $data ($elapsed seconds)"
+        puts "+++ [llength $::active_clients] units still in execution."
         lappend ::clients_time_history $elapsed $data
         signal_idle_client $fd
+    } elseif {$status eq {ok}} {
+        puts "($fd) \[[colorstr green $status]\]: $data"
+    } elseif {$status eq {err}} {
+        puts "($fd) \[[colorstr red $status]\]: $data"
+    } else {
+        puts "($fd) \[$status\]: $data"
     }
 }