package main import ( "net/http" "testing" ) // TestMuxPatternRegistered 已注册/未注册两分支。 func TestMuxPatternRegistered(t *testing.T) { mux := http.NewServeMux() if h := muxPatternRegistered(mux, "/healthz"); h != nil { t.Fatalf("未注册时应返回 nil,实得 %v", h) } mux.HandleFunc("/healthz", func(http.ResponseWriter, *http.Request) {}) if h := muxPatternRegistered(mux, "/healthz"); h == nil { t.Fatal("已注册时应返回非 nil") } // 方法限定 pattern(scheduler 形态 "GET /healthz")也应被识别。 m2 := http.NewServeMux() m2.HandleFunc("GET /healthz", func(http.ResponseWriter, *http.Request) {}) if h := muxPatternRegistered(m2, "/healthz"); h == nil { t.Fatal("GET /healthz 方法限定 pattern 应识别为已注册") } }