diff --git a/src/test/java/redis/clients/jedis/commands/unified/BinaryValuesCommandsTestBase.java b/src/test/java/redis/clients/jedis/commands/unified/BinaryValuesCommandsTestBase.java index 48a3ef7e6d..f34291d042 100644 --- a/src/test/java/redis/clients/jedis/commands/unified/BinaryValuesCommandsTestBase.java +++ b/src/test/java/redis/clients/jedis/commands/unified/BinaryValuesCommandsTestBase.java @@ -343,6 +343,19 @@ public void setGet() { assertNull(jedis.setGet(bbar, bfoo)); } + @Test + public void setGetWithParams() { + jedis.del(bfoo); + + // no previous, return null + assertNull(jedis.setGet(bfoo, bbar, setParams().nx())); + + // key already exists, new value should not be set, previous value should be bbar + assertArrayEquals(bbar, jedis.setGet(bfoo, binaryValue, setParams().nx())); + + assertArrayEquals(bbar, jedis.setGet(bfoo, binaryValue, setParams().xx())); + } + @Test public void sendCommandTest() { Object obj = jedis.sendCommand(SET, "x".getBytes(), "1".getBytes()); diff --git a/src/test/java/redis/clients/jedis/commands/unified/StringValuesCommandsTestBase.java b/src/test/java/redis/clients/jedis/commands/unified/StringValuesCommandsTestBase.java index f21876979e..dfc6aa9b1c 100644 --- a/src/test/java/redis/clients/jedis/commands/unified/StringValuesCommandsTestBase.java +++ b/src/test/java/redis/clients/jedis/commands/unified/StringValuesCommandsTestBase.java @@ -3,6 +3,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertNull; +import static redis.clients.jedis.params.SetParams.setParams; import java.util.ArrayList; import java.util.List; @@ -41,6 +42,19 @@ public void getSet() { assertEquals("bar", value); } + @Test + public void setGetWithParams() { + jedis.del("foo"); + + // no previous, return null + assertNull(jedis.setGet("foo", "bar", setParams().nx())); + + // key already exists, new value should not be set, previous value should be bbar + assertEquals("bar", jedis.setGet("foo", "foobar", setParams().nx())); + + assertEquals("bar", jedis.setGet("foo", "foobar", setParams().xx())); + } + @Test public void getDel() { String status = jedis.set("foo", "bar");