package config import "testing" // TestMergeStartupCatalogDefaultsSkipsBlankNames runs one orchestration or CLI step. // Signature: TestMergeStartupCatalogDefaultsSkipsBlankNames(t *testing.T). // Why: blank generated or hand-written checklist names should not poison // default-catalog merging or create duplicate unnamed runtime checks. func TestMergeStartupCatalogDefaultsSkipsBlankNames(t *testing.T) { httpMerged := mergeServiceChecklistDefaults( []ServiceChecklistCheck{{Name: " "}, {Name: "custom"}}, []ServiceChecklistCheck{{Name: " "}, {Name: "baseline"}}, ) if len(httpMerged) != 3 || httpMerged[0].Name != " " || httpMerged[1].Name != "baseline" || httpMerged[2].Name != "custom" { t.Fatalf("unexpected HTTP checklist merge: %#v", httpMerged) } tcpMerged := mergeTCPServiceChecklistDefaults( []TCPServiceChecklistCheck{{Name: " "}, {Name: "smtp-custom"}}, []TCPServiceChecklistCheck{{Name: " "}, {Name: "smtp-baseline"}}, ) if len(tcpMerged) != 3 || tcpMerged[0].Name != " " || tcpMerged[1].Name != "smtp-baseline" || tcpMerged[2].Name != "smtp-custom" { t.Fatalf("unexpected TCP checklist merge: %#v", tcpMerged) } }