+func TestCliHealthCheckCanShowHaDeploymentStatusCorrectlyWhenOneSentinelStateNotUp(t *testing.T) {
+ setupHcMockMasterDb("10.20.30.40", "6379")
+ addHcMockReplicaDbState("1.2.3.4", "6379", "ok")
+ addHcMockReplicaDbState("5.6.7.8", "6379", "ok")
+ addHcMockSentinelDbState("1.2.3.4", "26379", "some-failure")
+ addHcMockSentinelDbState("5.6.7.8", "26379", "sentinel")
+
+ stdout, err := runHcCli()
+
+ assert.Nil(t, err)
+ assert.Contains(t, stdout, "Overall status: NOK")
+ assert.Contains(t, stdout, "Replica #1 (1.2.3.4:6379): OK")
+ assert.Contains(t, stdout, "Replica #2 (5.6.7.8:6379): OK")
+ assert.Contains(t, stdout, "Sentinel #1 (1.2.3.4:26379): NOK")
+ assert.Contains(t, stdout, "Sentinel flags are 'some-failure', expected 'sentinel'")
+}
+