Skip to content

Commit 170758a

Browse files
committed
Add test case
1 parent 2d33705 commit 170758a

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

src/test/java/redis/clients/jedis/JedisClusterTest.java

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,32 @@ public void testReadonlyAndReadwrite() throws Exception {
199199
nodeSlave2.flushDB();
200200
}
201201

202+
@Test
203+
public void testReadFromReplicas() throws Exception {
204+
node1.clusterMeet(LOCAL_IP, nodeInfoSlave2.getPort());
205+
JedisClusterTestUtil.waitForClusterReady(node1, node2, node3, nodeSlave2);
206+
207+
for (String nodeInfo : node2.clusterNodes().split("\n")) {
208+
if (nodeInfo.contains("myself")) {
209+
nodeSlave2.clusterReplicate(nodeInfo.split(" ")[0]);
210+
break;
211+
}
212+
}
213+
214+
DefaultJedisClientConfig READ_REPLICAS_CLIENT_CONFIG
215+
= DefaultJedisClientConfig.builder().password("wb6Cluster").readOnlyForReplicas().build();
216+
try (JedisCluster jedisCluster = new JedisCluster(nodeInfo1, READ_REPLICAS_CLIENT_CONFIG,
217+
DEFAULT_REDIRECTIONS, DEFAULT_POOL_CONFIG)) {
218+
assertEquals("OK", jedisCluster.set("test", "read-from-replicas"));
219+
220+
ClusterCommandObjects commandObjects = new ClusterCommandObjects();
221+
assertEquals("read-from-replicas", jedisCluster.executeCommandToReplica(commandObjects.get("test")));
222+
}
223+
224+
nodeSlave2.clusterReset(ClusterResetType.SOFT);
225+
nodeSlave2.flushDB();
226+
}
227+
202228
/**
203229
* slot->nodes 15363 node3 e
204230
*/

0 commit comments

Comments
 (0)