github.com/gofiber/fiber/v2@v2.47.0/middleware/skip/skip_test.go (about) 1 package skip_test 2 3 import ( 4 "net/http/httptest" 5 "testing" 6 7 "github.com/gofiber/fiber/v2" 8 "github.com/gofiber/fiber/v2/middleware/skip" 9 "github.com/gofiber/fiber/v2/utils" 10 ) 11 12 // go test -run Test_Skip 13 func Test_Skip(t *testing.T) { 14 t.Parallel() 15 app := fiber.New() 16 17 app.Use(skip.New(errTeapotHandler, func(*fiber.Ctx) bool { return true })) 18 app.Get("/", helloWorldHandler) 19 20 resp, err := app.Test(httptest.NewRequest(fiber.MethodGet, "/", nil)) 21 utils.AssertEqual(t, nil, err) 22 utils.AssertEqual(t, fiber.StatusOK, resp.StatusCode) 23 } 24 25 // go test -run Test_SkipFalse 26 func Test_SkipFalse(t *testing.T) { 27 t.Parallel() 28 app := fiber.New() 29 30 app.Use(skip.New(errTeapotHandler, func(*fiber.Ctx) bool { return false })) 31 app.Get("/", helloWorldHandler) 32 33 resp, err := app.Test(httptest.NewRequest(fiber.MethodGet, "/", nil)) 34 utils.AssertEqual(t, nil, err) 35 utils.AssertEqual(t, fiber.StatusTeapot, resp.StatusCode) 36 } 37 38 // go test -run Test_SkipNilFunc 39 func Test_SkipNilFunc(t *testing.T) { 40 t.Parallel() 41 app := fiber.New() 42 43 app.Use(skip.New(errTeapotHandler, nil)) 44 app.Get("/", helloWorldHandler) 45 46 resp, err := app.Test(httptest.NewRequest(fiber.MethodGet, "/", nil)) 47 utils.AssertEqual(t, nil, err) 48 utils.AssertEqual(t, fiber.StatusTeapot, resp.StatusCode) 49 } 50 51 func helloWorldHandler(c *fiber.Ctx) error { 52 return c.SendString("Hello, World 👋!") 53 } 54 55 func errTeapotHandler(*fiber.Ctx) error { 56 return fiber.ErrTeapot 57 }