From 13a21caae348060f93a04df3603b69d4ba125056 Mon Sep 17 00:00:00 2001 From: antirez Date: Fri, 13 Apr 2012 15:23:32 +0200 Subject: [PATCH] New test for scripting engine: DECR_IF_GT. --- tests/unit/scripting.tcl | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/tests/unit/scripting.tcl b/tests/unit/scripting.tcl index a9aae7b8..009c1347 100644 --- a/tests/unit/scripting.tcl +++ b/tests/unit/scripting.tcl @@ -229,6 +229,28 @@ start_server {tags {"scripting"}} { catch {r eval {a=10} 0} e set e } {*ERR*attempted to create global*} + + test {Test an example script DECR_IF_GT} { + set decr_if_gt { + local current + + current = redis.call('get',KEYS[1]) + if not current then return nil end + if current > ARGV[1] then + return redis.call('decr',KEYS[1]) + else + return redis.call('get',KEYS[1]) + end + } + r set foo 5 + set res {} + lappend res [r eval $decr_if_gt 1 foo 2] + lappend res [r eval $decr_if_gt 1 foo 2] + lappend res [r eval $decr_if_gt 1 foo 2] + lappend res [r eval $decr_if_gt 1 foo 2] + lappend res [r eval $decr_if_gt 1 foo 2] + set res + } {4 3 2 2 2} } start_server {tags {"scripting repl"}} { -- 2.47.2