У вас может быть функция, которая возвращает ваш обработчик, который вы передаете backenddb_call
в качестве аргумента:
https://play.golang.org/p/aSMxeEgJL8U
func GetHandler(fn func (r *http.Request) ([]Data, error)) http.Handler {
return http.HandlerFunc(func (w http.ResponseWriter, r *http.Request) {
data, err := fn(r)
fmt.Println(data, err)
})
}
Затем, когда вы создаете его:
http.HandleFunc("/test", GetHandler(backenddb_call))
и для проверки вы можете просто передать другой вызов:
GetHandler(func (r *http.Request) ([]Data, error) {
fmt.Println("Mock")
return []Data{"This", "Is", "A", "Fake", "Response"}, nil
})