(b *testing.B)
| 187 | } |
| 188 | |
| 189 | func BenchmarkE2E(b *testing.B) { |
| 190 | run := func(b *testing.B, handler http.Handler) { |
| 191 | b.Helper() |
| 192 | |
| 193 | s := httptest.NewServer(handler) |
| 194 | defer s.Close() |
| 195 | b.ReportAllocs() |
| 196 | for i := 0; i < b.N; i++ { |
| 197 | resp, err := http.Get(s.URL) |
| 198 | if err != nil { |
| 199 | b.Fatal(err) |
| 200 | } |
| 201 | _, _ = io.Copy(io.Discard, resp.Body) |
| 202 | _ = resp.Body.Close() |
| 203 | } |
| 204 | } |
| 205 | b.Run("Baseline", func(b *testing.B) { |
| 206 | run(b, http.HandlerFunc(benchHandler)) |
| 207 | }) |
| 208 | b.Run("WithLog", func(b *testing.B) { |
| 209 | l := NewStackdriverLogger(io.Discard, func(error) {}) |
| 210 | run(b, NewHandler(l, http.HandlerFunc(benchHandler))) |
| 211 | }) |
| 212 | } |
| 213 | |
| 214 | func benchHandler(w http.ResponseWriter, r *http.Request) { |
| 215 | const msg = "Hello, World!" |
nothing calls this directly
no test coverage detected