]> git.saurik.com Git - redis.git/blobdiff - tests/support/server.tcl
code to enable running tests with the vm enabled
[redis.git] / tests / support / server.tcl
index 8664b9a4305b272f8c4c67b4b4e7d043bdad6155..18728f91272c123360b400209eb5768af5acce82 100644 (file)
@@ -26,7 +26,7 @@ proc kill_server config {
         if {[incr wait 10] % 1000 == 0} {
             puts "Waiting for process $pid to exit..."
         }
         if {[incr wait 10] % 1000 == 0} {
             puts "Waiting for process $pid to exit..."
         }
-        exec kill $pid
+        catch {exec kill $pid}
         after 10
     }
 }
         after 10
     }
 }
@@ -40,6 +40,7 @@ proc is_alive config {
     }
 }
 
     }
 }
 
+set ::global_overrides {}
 proc start_server {filename overrides {code undefined}} {
     set data [split [exec cat "tests/assets/$filename"] "\n"]
     set config {}
 proc start_server {filename overrides {code undefined}} {
     set data [split [exec cat "tests/assets/$filename"] "\n"]
     set config {}
@@ -58,8 +59,8 @@ proc start_server {filename overrides {code undefined}} {
     # start every server on a different port
     dict set config port [incr ::port]
 
     # start every server on a different port
     dict set config port [incr ::port]
 
-    # apply overrides from arguments
-    foreach override $overrides {
+    # apply overrides from global space and arguments
+    foreach override [concat $::global_overrides $overrides] {
         set directive [lrange $override 0 0]
         set arguments [lrange $override 1 end]
         dict set config $directive $arguments
         set directive [lrange $override 0 0]
         set arguments [lrange $override 1 end]
         dict set config $directive $arguments