mirror of
https://github.com/openfaas/faas.git
synced 2025-06-17 12:46:59 +00:00
Move to use WithTimeout instead of WithDeadline for context
These two functions are effectively the same, with the former being a wrapper for the later. Signed-off-by: Alex Ellis <alexellis2@gmail.com>
This commit is contained in:
parent
35508ac70b
commit
c9b5e5f146
@ -11,9 +11,9 @@ func MakeExternalAuthHandler(next http.HandlerFunc, upstreamTimeout time.Duratio
|
||||
return func(w http.ResponseWriter, r *http.Request) {
|
||||
req, _ := http.NewRequest(http.MethodGet, upstreamURL, nil)
|
||||
|
||||
deadlineContext, cancel := context.WithDeadline(
|
||||
deadlineContext, cancel := context.WithTimeout(
|
||||
context.Background(),
|
||||
time.Now().Add(upstreamTimeout))
|
||||
upstreamTimeout)
|
||||
|
||||
defer cancel()
|
||||
|
||||
|
@ -53,11 +53,12 @@ func Test_External_Auth_Wrapper_PassesValidAuth(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func Test_External_Auth_Wrapper_TimeoutGivesInternalServerError(t *testing.T) {
|
||||
// Test_External_Auth_Wrapper_PassesValidAuthButOnly200IsValid this test exists
|
||||
// to document the TODO action to consider all "2xx" statuses as valid.
|
||||
func Test_External_Auth_Wrapper_PassesValidAuthButOnly200IsValid(t *testing.T) {
|
||||
|
||||
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
time.Sleep(50 * time.Millisecond)
|
||||
w.WriteHeader(http.StatusOK)
|
||||
w.WriteHeader(http.StatusAccepted)
|
||||
}))
|
||||
defer s.Close()
|
||||
|
||||
@ -66,14 +67,38 @@ func Test_External_Auth_Wrapper_TimeoutGivesInternalServerError(t *testing.T) {
|
||||
}
|
||||
|
||||
passBody := false
|
||||
handler := MakeExternalAuthHandler(next, time.Millisecond*10, s.URL, passBody)
|
||||
handler := MakeExternalAuthHandler(next, time.Second*5, s.URL, passBody)
|
||||
|
||||
req := httptest.NewRequest(http.MethodGet, s.URL, nil)
|
||||
rr := httptest.NewRecorder()
|
||||
handler(rr, req)
|
||||
|
||||
want := http.StatusInternalServerError
|
||||
want := http.StatusUnauthorized
|
||||
if rr.Code != want {
|
||||
t.Errorf("Status incorrect, want: %d, but got %d", want, rr.Code)
|
||||
}
|
||||
}
|
||||
|
||||
// func Test_External_Auth_Wrapper_TimeoutGivesInternalServerError(t *testing.T) {
|
||||
|
||||
// s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
// time.Sleep(50 * time.Millisecond)
|
||||
// w.WriteHeader(http.StatusOK)
|
||||
// }))
|
||||
// defer s.Close()
|
||||
|
||||
// next := func(w http.ResponseWriter, r *http.Request) {
|
||||
// w.WriteHeader(http.StatusNotImplemented)
|
||||
// }
|
||||
|
||||
// passBody := false
|
||||
// handler := MakeExternalAuthHandler(next, time.Millisecond*10, s.URL, passBody)
|
||||
|
||||
// req := httptest.NewRequest(http.MethodGet, s.URL, nil)
|
||||
// rr := httptest.NewRecorder()
|
||||
// handler(rr, req)
|
||||
|
||||
// want := http.StatusInternalServerError
|
||||
// if rr.Code != want {
|
||||
// t.Errorf("Status incorrect, want: %d, but got %d", want, rr.Code)
|
||||
// }
|
||||
// }
|
||||
|
Loading…
x
Reference in New Issue
Block a user