From 09843df1ddd6945b3b7001803cf89ee56cb9d12c Mon Sep 17 00:00:00 2001 From: antirez Date: Mon, 30 May 2011 17:16:33 +0200 Subject: [PATCH] test for the BRPOPLPUSH issue 561 related issues --- tests/integration/replication.tcl | 18 ++++++++++++++++++ tests/unit/type/list.tcl | 8 ++++++++ 2 files changed, 26 insertions(+) diff --git a/tests/integration/replication.tcl b/tests/integration/replication.tcl index 892fae03..227356b2 100644 --- a/tests/integration/replication.tcl +++ b/tests/integration/replication.tcl @@ -6,6 +6,24 @@ start_server {tags {"repl"}} { s -1 role } {slave} + test {BRPOPLPUSH replication, when blocking against empty list} { + set rd [redis_deferring_client] + $rd brpoplpush a b 5 + r lpush a foo + after 1000 + assert_equal [r debug digest] [r -1 debug digest] + } + + test {BRPOPLPUSH replication, list exists} { + set rd [redis_deferring_client] + r lpush c 1 + r lpush c 2 + r lpush c 3 + $rd brpoplpush c d 5 + after 1000 + assert_equal [r debug digest] [r -1 debug digest] + } + test {MASTER and SLAVE dataset should be identical after complex ops} { createComplexDataset r 10000 after 500 diff --git a/tests/unit/type/list.tcl b/tests/unit/type/list.tcl index b6055b26..616abd21 100644 --- a/tests/unit/type/list.tcl +++ b/tests/unit/type/list.tcl @@ -278,6 +278,14 @@ start_server { r exec } {foo bar {} {} {bar foo}} + test {BRPOPLPUSH timeout} { + set rd [redis_deferring_client] + + $rd brpoplpush foo_list bar_list 1 + after 2000 + $rd read + } {} + foreach {pop} {BLPOP BRPOP} { test "$pop: with single empty list argument" { set rd [redis_deferring_client]