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]