package adminapi import ( "net/http/httptest" "testing" ) func TestNodeExporterTargetsAreTheControlPlaneAndTheStore(t *testing.T) { a := &API{} a.SetStoreStatus(func() ([]StoreMember, error) { return []StoreMember{{Name: "pg01", Host: "10.0.0.149"}, {Name: "ctl", Host: "10.0.0.140"}}, nil }) r := httptest.NewRequest("GET", "http://10.0.0.140:9091/prometheus/targets", nil) got := a.nodeExporterTargetsWith(r, nil) if len(got) != 2 { t.Fatalf("%+v", got) } for _, g := range got { if g.Targets[0] == "10.0.0.140:9100" && g.Labels["role"] != "control-plane" { t.Errorf("the control plane twice: %+v", got) } } }