2 changed files with 24 additions and 30 deletions
@ -1,30 +0,0 @@ |
|||||||
package mux |
|
||||||
|
|
||||||
import ( |
|
||||||
"context" |
|
||||||
"net/http" |
|
||||||
"testing" |
|
||||||
"time" |
|
||||||
) |
|
||||||
|
|
||||||
func TestNativeContextMiddleware(t *testing.T) { |
|
||||||
withTimeout := func(h http.Handler) http.Handler { |
|
||||||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { |
|
||||||
ctx, cancel := context.WithTimeout(r.Context(), time.Minute) |
|
||||||
defer cancel() |
|
||||||
h.ServeHTTP(w, r.WithContext(ctx)) |
|
||||||
}) |
|
||||||
} |
|
||||||
|
|
||||||
r := NewRouter() |
|
||||||
r.Handle("/path/{foo}", withTimeout(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { |
|
||||||
vars := Vars(r) |
|
||||||
if vars["foo"] != "bar" { |
|
||||||
t.Fatal("Expected foo var to be set") |
|
||||||
} |
|
||||||
}))) |
|
||||||
|
|
||||||
rec := NewRecorder() |
|
||||||
req := newRequest("GET", "/path/bar") |
|
||||||
r.ServeHTTP(rec, req) |
|
||||||
} |
|
||||||
Loading…
Reference in new issue