Support hDel with multiple hash keys
DATAREDIS-99
This commit is contained in:
@@ -1762,7 +1762,17 @@ public abstract class AbstractConnectionIntegrationTests {
|
||||
actual.add(connection.hDel("test", "key"));
|
||||
actual.add(connection.hDel("test", "foo"));
|
||||
actual.add(connection.hExists("test", "key"));
|
||||
verifyResults(Arrays.asList(new Object[] { true, true, false, false }));
|
||||
verifyResults(Arrays.asList(new Object[] { true, 1l, 0l, false }));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testHDelMultiple() {
|
||||
actual.add(connection.hSet("test", "key", "val"));
|
||||
actual.add(connection.hSet("test", "foo", "bar"));
|
||||
actual.add(connection.hDel("test", "key", "foo"));
|
||||
actual.add(connection.hExists("test", "key"));
|
||||
actual.add(connection.hExists("test", "foo"));
|
||||
verifyResults(Arrays.asList(new Object[] { true, true, 2l, false, false }));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -254,13 +254,13 @@ public class DefaultStringRedisConnectionPipelineTests extends DefaultStringRedi
|
||||
|
||||
@Test
|
||||
public void testHDelBytes() {
|
||||
doReturn(Arrays.asList(new Object[] { true })).when(nativeConnection).closePipeline();
|
||||
doReturn(Arrays.asList(new Object[] { 1l })).when(nativeConnection).closePipeline();
|
||||
super.testHDelBytes();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testHDel() {
|
||||
doReturn(Arrays.asList(new Object[] { true })).when(nativeConnection).closePipeline();
|
||||
doReturn(Arrays.asList(new Object[] { 1l })).when(nativeConnection).closePipeline();
|
||||
super.testHDel();
|
||||
}
|
||||
|
||||
|
||||
@@ -222,13 +222,13 @@ public class DefaultStringRedisConnectionPipelineTxTests extends
|
||||
|
||||
@Test
|
||||
public void testHDelBytes() {
|
||||
doReturn(Arrays.asList(new Object[] {Arrays.asList(new Object[] { true })})).when(nativeConnection).closePipeline();
|
||||
doReturn(Arrays.asList(new Object[] {Arrays.asList(new Object[] { 1l })})).when(nativeConnection).closePipeline();
|
||||
super.testHDelBytes();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testHDel() {
|
||||
doReturn(Arrays.asList(new Object[] {Arrays.asList(new Object[] { true })})).when(nativeConnection).closePipeline();
|
||||
doReturn(Arrays.asList(new Object[] {Arrays.asList(new Object[] { 1l })})).when(nativeConnection).closePipeline();
|
||||
super.testHDel();
|
||||
}
|
||||
|
||||
|
||||
@@ -326,16 +326,16 @@ public class DefaultStringRedisConnectionTests {
|
||||
|
||||
@Test
|
||||
public void testHDelBytes() {
|
||||
doReturn(true).when(nativeConnection).hDel(fooBytes, barBytes);
|
||||
doReturn(1l).when(nativeConnection).hDel(fooBytes, barBytes);
|
||||
actual.add(connection.hDel(fooBytes, barBytes));
|
||||
verifyResults(Arrays.asList(new Object[] { true }));
|
||||
verifyResults(Arrays.asList(new Object[] { 1l }));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testHDel() {
|
||||
doReturn(true).when(nativeConnection).hDel(fooBytes, barBytes);
|
||||
doReturn(1l).when(nativeConnection).hDel(fooBytes, barBytes);
|
||||
actual.add(connection.hDel(foo, bar));
|
||||
verifyResults(Arrays.asList(new Object[] { true }));
|
||||
verifyResults(Arrays.asList(new Object[] { 1l }));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -221,13 +221,13 @@ public class DefaultStringRedisConnectionTxTests extends DefaultStringRedisConne
|
||||
|
||||
@Test
|
||||
public void testHDelBytes() {
|
||||
doReturn(Arrays.asList(new Object[] { true })).when(nativeConnection).exec();
|
||||
doReturn(Arrays.asList(new Object[] { 1l })).when(nativeConnection).exec();
|
||||
super.testHDelBytes();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testHDel() {
|
||||
doReturn(Arrays.asList(new Object[] { true })).when(nativeConnection).exec();
|
||||
doReturn(Arrays.asList(new Object[] { 1l })).when(nativeConnection).exec();
|
||||
super.testHDel();
|
||||
}
|
||||
|
||||
|
||||
@@ -426,4 +426,9 @@ public class JedisConnectionPipelineIntegrationTests extends
|
||||
public void testInfoBySection() throws Exception {
|
||||
super.testInfoBySection();
|
||||
}
|
||||
|
||||
@Test(expected=UnsupportedOperationException.class)
|
||||
public void testHDelMultiple() {
|
||||
super.testHDelMultiple();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -362,4 +362,9 @@ public class JedisConnectionTransactionIntegrationTests extends
|
||||
public void testLastSave() {
|
||||
super.testLastSave();
|
||||
}
|
||||
|
||||
@Test(expected=UnsupportedOperationException.class)
|
||||
public void testHDelMultiple() {
|
||||
super.testHDelMultiple();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -560,6 +560,11 @@ public class JRedisConnectionIntegrationTests extends AbstractConnectionIntegrat
|
||||
super.testInfoBySection();
|
||||
}
|
||||
|
||||
@Test(expected=UnsupportedOperationException.class)
|
||||
public void testHDelMultiple() {
|
||||
super.testHDelMultiple();
|
||||
}
|
||||
|
||||
// Jredis returns null for rPush and lPush
|
||||
@Test
|
||||
public void testLLen() {
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
package org.springframework.data.redis.core;
|
||||
|
||||
import static org.junit.Assert.assertThat;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.springframework.data.redis.matcher.RedisTestMatchers.isEqual;
|
||||
|
||||
import java.util.Arrays;
|
||||
@@ -117,4 +118,17 @@ public class DefaultHashOperationsTests<K,HK,HV> {
|
||||
expected.put(key2, val2);
|
||||
assertThat(hashOps.entries(key), isEqual(expected));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testDelete() {
|
||||
K key = keyFactory.instance();
|
||||
HK key1 = hashKeyFactory.instance();
|
||||
HV val1 = hashValueFactory.instance();
|
||||
HK key2 = hashKeyFactory.instance();
|
||||
HV val2 = hashValueFactory.instance();
|
||||
hashOps.put(key, key1, val1);
|
||||
hashOps.put(key, key2, val2);
|
||||
hashOps.delete(key, key1, key2);
|
||||
assertTrue(hashOps.keys(key).isEmpty());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user