+
+func TestGetAddressSentinelsSuccessfully(t *testing.T) {
+ st := setupDbState()
+ st.setPrimaryFields("master", "1.2.3.4", "60000", "2", "master")
+ st.addReplicaFields("slave", "6.7.8.9", "1234", "ok", "slave")
+ st.addReplicaFields("slave", "6.7.8.10", "3450", "ok", "slave")
+ st.addSentinelFields("6.7.8.9", "11234", "sentinel")
+ st.addSentinelFields("6.7.8.10", "13450", "sentinel")
+ addr := st.state.SentinelsDbState.States[0].GetAddress()
+ assert.Equal(t, "6.7.8.9:11234", addr)
+ addr = st.state.SentinelsDbState.States[1].GetAddress()
+ assert.Equal(t, "6.7.8.10:13450", addr)
+}
+
+func TestGetAddressSentinelsNoIpPort(t *testing.T) {
+ st := setupDbState()
+ st.setPrimaryFields("master", "1.2.3.4", "60000", "2", "master")
+ st.addReplicaFields("slave", "", "", "ok", "slave")
+ st.addReplicaFields("slave", "6.7.8.10", "3450", "ok", "slave")
+ st.addSentinelFields("", "", "sentinel")
+ st.addSentinelFields("6.7.8.10", "13450", "sentinel")
+ addr := st.state.SentinelsDbState.States[0].GetAddress()
+ assert.Equal(t, "", addr)
+ addr = st.state.SentinelsDbState.States[1].GetAddress()
+ assert.Equal(t, "6.7.8.10:13450", addr)
+}