Home / Function/ TestCollectHandlers_MixedHandlers() — fiber Function Reference

TestCollectHandlers_MixedHandlers() — fiber Function Reference

Architecture documentation for the TestCollectHandlers_MixedHandlers() function in adapter_test.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  ad9f9860_2be6_1d63_bc78_bf2b89f60ba4["TestCollectHandlers_MixedHandlers()"]
  3ad7a4ef_7f07_008c_234d_52c9a342aa98["adapter_test.go"]
  ad9f9860_2be6_1d63_bc78_bf2b89f60ba4 -->|defined in| 3ad7a4ef_7f07_008c_234d_52c9a342aa98
  style ad9f9860_2be6_1d63_bc78_bf2b89f60ba4 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

adapter_test.go lines 939–970

func TestCollectHandlers_MixedHandlers(t *testing.T) {
	t.Parallel()

	before := func(c Ctx) error {
		c.Set("X-Before", "fiber")
		return nil
	}
	var writeErr error
	httpHandler := http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) {
		_, writeErr = w.Write([]byte("done"))
	})

	handlers := collectHandlers("test", before, httpHandler)
	require.Len(t, handlers, 2)
	require.Equal(t, reflect.ValueOf(before).Pointer(), reflect.ValueOf(handlers[0]).Pointer())
	require.NotNil(t, handlers[1])

	app := New()
	ctx := app.AcquireCtx(&fasthttp.RequestCtx{})
	t.Cleanup(func() {
		app.ReleaseCtx(ctx)
	})

	err := handlers[0](ctx)
	require.NoError(t, err)

	err = handlers[1](ctx)
	require.NoError(t, err)
	require.Equal(t, "done", string(ctx.Response().Body()))
	require.Equal(t, "fiber", string(ctx.Response().Header.Peek("X-Before")))
	require.NoError(t, writeErr)
}

Domain

Subdomains

Defined In

Frequently Asked Questions

What does TestCollectHandlers_MixedHandlers() do?
TestCollectHandlers_MixedHandlers() is a function in the fiber codebase, defined in adapter_test.go.
Where is TestCollectHandlers_MixedHandlers() defined?
TestCollectHandlers_MixedHandlers() is defined in adapter_test.go at line 939.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free