Benchmark_Rewrite() — fiber Function Reference
Architecture documentation for the Benchmark_Rewrite() function in rewrite_test.go from the fiber codebase.
Entity Profile
Dependency Diagram
graph TD 0469a4cf_9bd6_2a9f_4120_43df2e3bc827["Benchmark_Rewrite()"] f5365631_1ba8_5f21_5ff7_68fb70dbba7b["rewrite_test.go"] 0469a4cf_9bd6_2a9f_4120_43df2e3bc827 -->|defined in| f5365631_1ba8_5f21_5ff7_68fb70dbba7b style 0469a4cf_9bd6_2a9f_4120_43df2e3bc827 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
middleware/rewrite/rewrite_test.go lines 175–271
func Benchmark_Rewrite(b *testing.B) {
// Helper function to create a new Fiber app with rewrite middleware
createApp := func(config Config) *fiber.App {
app := fiber.New()
app.Use(New(config))
return app
}
// Benchmark: Rewrite with Next function always returns true
b.Run("Next always true", func(b *testing.B) {
app := createApp(Config{
Next: func(fiber.Ctx) bool {
return true
},
Rules: map[string]string{
"/old": "/new",
},
})
reqCtx := &fasthttp.RequestCtx{}
reqCtx.Request.SetRequestURI("/old")
b.ReportAllocs()
for b.Loop() {
app.Handler()(reqCtx)
}
})
// Benchmark: Rewrite with Next function always returns false
b.Run("Next always false", func(b *testing.B) {
app := createApp(Config{
Next: func(fiber.Ctx) bool {
return false
},
Rules: map[string]string{
"/old": "/new",
},
})
reqCtx := &fasthttp.RequestCtx{}
reqCtx.Request.SetRequestURI("/old")
b.ReportAllocs()
for b.Loop() {
app.Handler()(reqCtx)
}
})
// Benchmark: Rewrite with tokens
b.Run("Rewrite with tokens", func(b *testing.B) {
app := createApp(Config{
Rules: map[string]string{
"/users/*/orders/*": "/user/$1/order/$2",
},
})
reqCtx := &fasthttp.RequestCtx{}
reqCtx.Request.SetRequestURI("/users/123/orders/456")
b.ReportAllocs()
for b.Loop() {
app.Handler()(reqCtx)
}
})
// Benchmark: Non-matching request, handled by default route
b.Run("NonMatch with default", func(b *testing.B) {
app := createApp(Config{
Rules: map[string]string{
"/users/*/orders/*": "/user/$1/order/$2",
},
})
app.Use(func(c fiber.Ctx) error {
return c.SendStatus(fiber.StatusOK)
})
reqCtx := &fasthttp.RequestCtx{}
reqCtx.Request.SetRequestURI("/not-matching-any-rule")
b.ReportAllocs()
for b.Loop() {
app.Handler()(reqCtx)
}
})
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does Benchmark_Rewrite() do?
Benchmark_Rewrite() is a function in the fiber codebase, defined in middleware/rewrite/rewrite_test.go.
Where is Benchmark_Rewrite() defined?
Benchmark_Rewrite() is defined in middleware/rewrite/rewrite_test.go at line 175.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free