diff --git a/app_test.go b/app_test.go index c59d1fef87..ed213b080e 100644 --- a/app_test.go +++ b/app_test.go @@ -40,7 +40,12 @@ func Test_App_MethodNotAllowed(t *testing.T) { app.Options("/", func(c *Ctx) {}) - resp, err := app.Test(httptest.NewRequest("GET", "/", nil)) + resp, err := app.Test(httptest.NewRequest("POST", "/", nil)) + utils.AssertEqual(t, nil, err) + utils.AssertEqual(t, 200, resp.StatusCode) + utils.AssertEqual(t, "", resp.Header.Get(HeaderAllow)) + + resp, err = app.Test(httptest.NewRequest("GET", "/", nil)) utils.AssertEqual(t, nil, err) utils.AssertEqual(t, 405, resp.StatusCode) utils.AssertEqual(t, "POST, OPTIONS", resp.Header.Get(HeaderAllow)) diff --git a/ctx.go b/ctx.go index 5ab4c684fd..9077825e2d 100644 --- a/ctx.go +++ b/ctx.go @@ -87,6 +87,8 @@ func (app *App) AcquireCtx(fctx *fasthttp.RequestCtx) *Ctx { // Reset route and handler index ctx.indexRoute = -1 ctx.indexHandler = 0 + // Reset matched flag + ctx.matched = false // Set paths ctx.path = getString(fctx.URI().PathOriginal()) ctx.pathOriginal = ctx.path