3434 */
3535public class ConvertersUnitTests {
3636
37- private static final String CLUSTER_NODES_RESPONSE = "" //
38- + "ef570f86c7b1a953846668debc177a3a16733420 127.0.0.1:6379 myself,master - 0 0 1 connected 0-5460 5602"
37+ private static final String REDIS_3_0_CLUSTER_NODES_RESPONSE = "" //
38+ + "ef570f86c7b1a953846668debc177a3a16733420 127.0.0.1:6379@16379 myself,master - 0 0 1 connected 0-5460 5602"
3939+ "\n "
40- + "0f2ee5df45d18c50aca07228cc18b1da96fd5e84 127.0.0.1:6380 master - 0 1427718161587 2 connected 5461 5603-10922"
40+ + "0f2ee5df45d18c50aca07228cc18b1da96fd5e84 127.0.0.1:6380@16380 master - 0 1427718161587 2 connected 5461 5603-10922"
4141+ "\n "
42- + "3b9b8192a874fa8f1f09dbc0ee20afab5738eee7 127.0.0.1:6381 master - 0 1427718161587 3 connected 10923-16383"
42+ + "3b9b8192a874fa8f1f09dbc0ee20afab5738eee7 127.0.0.1:6381@6381 master - 0 1427718161587 3 connected 10923-16383"
4343+ "\n "
44- + "8cad73f63eb996fedba89f041636f17d88cda075 127.0.0.1:7369 slave ef570f86c7b1a953846668debc177a3a16733420 0 1427718161587 1 connected" ;
44+ + "8cad73f63eb996fedba89f041636f17d88cda075 127.0.0.1:7369@7369 slave ef570f86c7b1a953846668debc177a3a16733420 0 1427718161587 1 connected" ;
45+
46+ private static final String REDIS_3_2_CLUSTER_NODES_RESPONSE = "" //
47+ + "ef570f86c7b1a953846668debc177a3a16733420 127.0.0.1:6379@16379 myself,master - 0 0 1 connected 0-5460 5602"
48+ + "\n "
49+ + "0f2ee5df45d18c50aca07228cc18b1da96fd5e84 127.0.0.1:6380@16380 master - 0 1427718161587 2 connected 5461 5603-10922"
50+ + "\n "
51+ + "3b9b8192a874fa8f1f09dbc0ee20afab5738eee7 127.0.0.1:6381@6381 master - 0 1427718161587 3 connected 10923-16383"
52+ + "\n "
53+ + "8cad73f63eb996fedba89f041636f17d88cda075 127.0.0.1:7369@7369 slave ef570f86c7b1a953846668debc177a3a16733420 0 1427718161587 1 connected" ;
4554
4655private static final String CLUSTER_NODE_WITH_SINGLE_SLOT_RESPONSE = "ef570f86c7b1a953846668debc177a3a16733420 127.0.0.1:6379 myself,master - 0 0 1 connected 3456" ;
4756
@@ -53,9 +62,62 @@ public class ConvertersUnitTests {
5362 * @see DATAREDIS-315
5463 */
5564@ Test
56- public void toSetOfRedisClusterNodesShouldConvertSingleStringNodesResponseCorrectly () {
65+ public void toSetOfRedis30ClusterNodesShouldConvertSingleStringNodesResponseCorrectly () {
66+
67+ Iterator <RedisClusterNode > nodes = Converters .toSetOfRedisClusterNodes (REDIS_3_0_CLUSTER_NODES_RESPONSE ).iterator ();
68+
69+ RedisClusterNode node = nodes .next (); // 127.0.0.1:6379
70+ assertThat (node .getId (), is ("ef570f86c7b1a953846668debc177a3a16733420" ));
71+ assertThat (node .getHost (), is ("127.0.0.1" ));
72+ assertThat (node .getPort (), is (6379 ));
73+ assertThat (node .getType (), is (NodeType .MASTER ));
74+ assertThat (node .getSlotRange ().contains (0 ), is (true ));
75+ assertThat (node .getSlotRange ().contains (5460 ), is (true ));
76+ assertThat (node .getSlotRange ().contains (5461 ), is (false ));
77+ assertThat (node .getSlotRange ().contains (5602 ), is (true ));
78+ assertThat (node .getFlags (), hasItems (Flag .MASTER , Flag .MYSELF ));
79+ assertThat (node .getLinkState (), is (LinkState .CONNECTED ));
80+
81+ node = nodes .next (); // 127.0.0.1:6380
82+ assertThat (node .getId (), is ("0f2ee5df45d18c50aca07228cc18b1da96fd5e84" ));
83+ assertThat (node .getHost (), is ("127.0.0.1" ));
84+ assertThat (node .getPort (), is (6380 ));
85+ assertThat (node .getType (), is (NodeType .MASTER ));
86+ assertThat (node .getSlotRange ().contains (5460 ), is (false ));
87+ assertThat (node .getSlotRange ().contains (5461 ), is (true ));
88+ assertThat (node .getSlotRange ().contains (5462 ), is (false ));
89+ assertThat (node .getSlotRange ().contains (10922 ), is (true ));
90+ assertThat (node .getFlags (), hasItems (Flag .MASTER ));
91+ assertThat (node .getLinkState (), is (LinkState .CONNECTED ));
92+
93+ node = nodes .next (); // 127.0.0.1:638
94+ assertThat (node .getId (), is ("3b9b8192a874fa8f1f09dbc0ee20afab5738eee7" ));
95+ assertThat (node .getHost (), is ("127.0.0.1" ));
96+ assertThat (node .getPort (), is (6381 ));
97+ assertThat (node .getType (), is (NodeType .MASTER ));
98+ assertThat (node .getSlotRange ().contains (10923 ), is (true ));
99+ assertThat (node .getSlotRange ().contains (16383 ), is (true ));
100+ assertThat (node .getFlags (), hasItems (Flag .MASTER ));
101+ assertThat (node .getLinkState (), is (LinkState .CONNECTED ));
102+
103+ node = nodes .next (); // 127.0.0.1:7369
104+ assertThat (node .getId (), is ("8cad73f63eb996fedba89f041636f17d88cda075" ));
105+ assertThat (node .getHost (), is ("127.0.0.1" ));
106+ assertThat (node .getPort (), is (7369 ));
107+ assertThat (node .getType (), is (NodeType .SLAVE ));
108+ assertThat (node .getMasterId (), is ("ef570f86c7b1a953846668debc177a3a16733420" ));
109+ assertThat (node .getSlotRange (), notNullValue ());
110+ assertThat (node .getFlags (), hasItems (Flag .SLAVE ));
111+ assertThat (node .getLinkState (), is (LinkState .CONNECTED ));
112+ }
113+
114+ /**
115+ * @see DATAREDIS-315
116+ */
117+ @ Test
118+ public void toSetOfRedis32ClusterNodesShouldConvertSingleStringNodesResponseCorrectly () {
57119
58- Iterator <RedisClusterNode > nodes = Converters .toSetOfRedisClusterNodes (CLUSTER_NODES_RESPONSE ).iterator ();
120+ Iterator <RedisClusterNode > nodes = Converters .toSetOfRedisClusterNodes (REDIS_3_2_CLUSTER_NODES_RESPONSE ).iterator ();
59121
60122RedisClusterNode node = nodes .next (); // 127.0.0.1:6379
61123assertThat (node .getId (), is ("ef570f86c7b1a953846668debc177a3a16733420" ));
0 commit comments