TestRecoveryWithWriterWithCustomRecovery() — gin Function Reference
Architecture documentation for the TestRecoveryWithWriterWithCustomRecovery() function in recovery_test.go from the gin codebase.
Entity Profile
Dependency Diagram
graph TD df6170bc_3461_dc42_35c6_b9b524e66bd2["TestRecoveryWithWriterWithCustomRecovery()"] c9a553a7_05a4_91a7_23b0_924f9f59d021["recovery_test.go"] df6170bc_3461_dc42_35c6_b9b524e66bd2 -->|defined in| c9a553a7_05a4_91a7_23b0_924f9f59d021 style df6170bc_3461_dc42_35c6_b9b524e66bd2 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
recovery_test.go lines 224–257
func TestRecoveryWithWriterWithCustomRecovery(t *testing.T) {
errBuffer := new(strings.Builder)
buffer := new(strings.Builder)
router := New()
DefaultErrorWriter = buffer
handleRecovery := func(c *Context, err any) {
errBuffer.WriteString(err.(string))
c.AbortWithStatus(http.StatusBadRequest)
}
router.Use(RecoveryWithWriter(DefaultErrorWriter, handleRecovery))
router.GET("/recovery", func(_ *Context) {
panic("Oupps, Houston, we have a problem")
})
// RUN
w := PerformRequest(router, http.MethodGet, "/recovery")
// TEST
assert.Equal(t, http.StatusBadRequest, w.Code)
assert.Contains(t, buffer.String(), "panic recovered")
assert.Contains(t, buffer.String(), "Oupps, Houston, we have a problem")
assert.Contains(t, buffer.String(), t.Name())
assert.NotContains(t, buffer.String(), "GET /recovery")
// Debug mode prints the request
SetMode(DebugMode)
// RUN
w = PerformRequest(router, http.MethodGet, "/recovery")
// TEST
assert.Equal(t, http.StatusBadRequest, w.Code)
assert.Contains(t, buffer.String(), "GET /recovery")
assert.Equal(t, strings.Repeat("Oupps, Houston, we have a problem", 2), errBuffer.String())
SetMode(TestMode)
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does TestRecoveryWithWriterWithCustomRecovery() do?
TestRecoveryWithWriterWithCustomRecovery() is a function in the gin codebase, defined in recovery_test.go.
Where is TestRecoveryWithWriterWithCustomRecovery() defined?
TestRecoveryWithWriterWithCustomRecovery() is defined in recovery_test.go at line 224.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free