github.com/traefik/yaegi@v0.15.1/_test/issue-1333.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "io" 6 "net/http" 7 "net/http/httptest" 8 ) 9 10 func mock(name string) http.HandlerFunc { 11 return func(rw http.ResponseWriter, req *http.Request) { 12 fmt.Fprint(rw, "Hello ", name) 13 } 14 } 15 16 func client(uri string) { 17 resp, err := http.Get(uri) 18 if err != nil { 19 panic(err) 20 } 21 body, err := io.ReadAll(resp.Body) 22 if err != nil { 23 panic(err) 24 } 25 fmt.Println(string(body)) 26 } 27 28 func main() { 29 mux := http.NewServeMux() 30 server := httptest.NewServer(mux) 31 defer server.Close() 32 mux.Handle("/", mock("foo")) 33 client(server.URL) 34 } 35 36 // Output: 37 // Hello foo