From 583802e1edc5d79350e172ae5a1d9a3a28e3f0c0 Mon Sep 17 00:00:00 2001 From: thylong Date: Mon, 7 Mar 2022 14:55:36 +0100 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Cache=20middleware:=20Add=20Benchma?= =?UTF-8?q?rk=20for=20additionalHeaders=20feature.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- middleware/cache/cache_test.go | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/middleware/cache/cache_test.go b/middleware/cache/cache_test.go index 59714b3b39..b863374b14 100644 --- a/middleware/cache/cache_test.go +++ b/middleware/cache/cache_test.go @@ -497,3 +497,31 @@ func Benchmark_Cache_Storage(b *testing.B) { utils.AssertEqual(b, fiber.StatusTeapot, fctx.Response.Header.StatusCode()) utils.AssertEqual(b, true, len(fctx.Response.Body()) > 30000) } + +func Benchmark_Cache_AdditionalHeaders(b *testing.B) { + app := fiber.New() + app.Use(New(Config{ + E2EHeaders: true, + })) + + app.Get("/demo", func(c *fiber.Ctx) error { + c.Response().Header.Add("X-Foobar", "foobar") + return c.SendStatus(418) + }) + + h := app.Handler() + + fctx := &fasthttp.RequestCtx{} + fctx.Request.Header.SetMethod("GET") + fctx.Request.SetRequestURI("/demo") + + b.ReportAllocs() + b.ResetTimer() + + for n := 0; n < b.N; n++ { + h(fctx) + } + + utils.AssertEqual(b, fiber.StatusTeapot, fctx.Response.Header.StatusCode()) + utils.AssertEqual(b, []byte("foobar"), fctx.Response.Header.Peek("X-Foobar")) +}