diff --git a/framework/middleware/timeout.go b/framework/middleware/timeout.go new file mode 100644 index 0000000..15eaba6 --- /dev/null +++ b/framework/middleware/timeout.go @@ -0,0 +1,11 @@ +package middleware + +import ( + "time" + + "git.vinchent.xyz/vinchent/go-web/framework" +) + +func Timeout(d time.Duration) framework.ControllerHandler { + return func(c *framework.Context) error { return nil } +} diff --git a/framework/middleware/timeout_test.go b/framework/middleware/timeout_test.go new file mode 100644 index 0000000..34632af --- /dev/null +++ b/framework/middleware/timeout_test.go @@ -0,0 +1,25 @@ +package middleware + +import ( + "net/http" + "net/http/httptest" + "testing" + "time" + + "git.vinchent.xyz/vinchent/go-web/framework" +) + +func TestTimeout(t *testing.T) { + t.Run("Test timeout handler", func(t *testing.T) { + timeoutHandler := Timeout(1 * time.Millisecond) + + request := httptest.NewRequest(http.MethodGet, "/", nil) + response := httptest.NewRecorder() + c := framework.NewContext(response, request) + + err := timeoutHandler(c) + if err != nil { + t.Fatal(err) + } + }) +}