]> git.saurik.com Git - redis.git/blobdiff - tests/support/test.tcl
Merge remote branch 'visionmedia/cli-help' into cli-help
[redis.git] / tests / support / test.tcl
index 2c1fc164f270e7be976eb0fbd22e5da21fe6672e..e801e1f228ea91946dd8d68ae4bfd722bcdcf52a 100644 (file)
@@ -33,9 +33,14 @@ proc assert_error {pattern code} {
 }
 
 proc assert_encoding {enc key} {
-    # swapped out value doesn't have encoding, so swap in first
-    r debug swapin $key
-    assert_match "* encoding:$enc *" [r debug object $key]
+    # Swapped out values don't have an encoding, so make sure that
+    # the value is swapped in before checking the encoding.
+    set dbg [r debug object $key]
+    while {[string match "* swapped at:*" $dbg]} {
+        r debug swapin $key
+        set dbg [r debug object $key]
+    }
+    assert_match "* encoding:$enc *" $dbg
 }
 
 proc assert_type {type key} {
@@ -85,8 +90,10 @@ proc test {name code {okpattern notspecified}} {
         }
     }
     if {$::traceleaks} {
-        if {![string match {*0 leaks*} [exec leaks redis-server]]} {
+        set output [exec leaks redis-server]
+        if {![string match {*0 leaks*} $output]} {
             puts "--------- Test $::testnum LEAKED! --------"
+            puts $output
             exit 1
         }
     }