Home / Function/ testFiberToHandlerFunc() — fiber Function Reference

testFiberToHandlerFunc() — fiber Function Reference

Architecture documentation for the testFiberToHandlerFunc() function in adaptor_test.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  c859bcb2_d45b_9ef3_644f_a4c3a495795d["testFiberToHandlerFunc()"]
  8ec96b38_44b4_af66_6f6f_dd60f87b680c["adaptor_test.go"]
  c859bcb2_d45b_9ef3_644f_a4c3a495795d -->|defined in| 8ec96b38_44b4_af66_6f6f_dd60f87b680c
  88001529_8cbe_6504_87c8_e0bac05c7623["Test_FiberHandler()"]
  88001529_8cbe_6504_87c8_e0bac05c7623 -->|calls| c859bcb2_d45b_9ef3_644f_a4c3a495795d
  24907837_0d21_26c3_804c_de4eb6f414c7["Test_FiberApp()"]
  24907837_0d21_26c3_804c_de4eb6f414c7 -->|calls| c859bcb2_d45b_9ef3_644f_a4c3a495795d
  35cda8fe_5979_1796_a049_1722af3d48c0["Test_FiberHandlerDefaultPort()"]
  35cda8fe_5979_1796_a049_1722af3d48c0 -->|calls| c859bcb2_d45b_9ef3_644f_a4c3a495795d
  04bcbfbf_9df8_99bc_51e6_eb070e665a45["Test_FiberAppDefaultPort()"]
  04bcbfbf_9df8_99bc_51e6_eb070e665a45 -->|calls| c859bcb2_d45b_9ef3_644f_a4c3a495795d
  style c859bcb2_d45b_9ef3_644f_a4c3a495795d fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

middleware/adaptor/adaptor_test.go lines 574–653

func testFiberToHandlerFunc(t *testing.T, checkDefaultPort bool, app ...*fiber.App) {
	t.Helper()

	expectedMethod := fiber.MethodPost
	expectedContentLength := len(expectedBody)
	expectedRemoteAddr := "1.2.3.4:6789"
	if checkDefaultPort {
		expectedRemoteAddr = "1.2.3.4:80"
	}
	expectedHeader := map[string]string{
		"Foo-Bar":         "baz",
		"Abc":             "defg",
		"XXX-Remote-Addr": "123.43.4543.345",
	}
	expectedURL, err := url.ParseRequestURI(expectedRequestURI)
	require.NoError(t, err)

	callsCount := 0
	fiberH := func(c fiber.Ctx) error {
		callsCount++
		require.Equal(t, expectedMethod, c.Method(), "Method")
		require.Equal(t, expectedRequestURI, string(c.RequestCtx().RequestURI()), "RequestURI")
		require.Equal(t, expectedContentLength, c.RequestCtx().Request.Header.ContentLength(), "ContentLength")
		require.Equal(t, expectedHost, c.Hostname(), "Host")
		require.Equal(t, expectedHost, string(c.Request().Header.Host()), "Host")
		require.Equal(t, "http://"+expectedHost, c.BaseURL(), "BaseURL")
		require.Equal(t, expectedRemoteAddr, c.RequestCtx().RemoteAddr().String(), "RemoteAddr")

		body := string(c.Body())
		require.Equal(t, expectedBody, body, "Body")
		require.Equal(t, expectedURL.String(), c.OriginalURL(), "URL")

		for k, expectedV := range expectedHeader {
			v := c.Get(k)
			require.Equal(t, expectedV, v, "Header")
		}

		c.Set("Header1", "value1")
		c.Set("Header2", "value2")
		c.Status(fiber.StatusBadRequest)
		_, err := c.Write(fmt.Appendf(nil, "request body is %q", body))
		return err
	}

	var handlerFunc http.HandlerFunc
	if len(app) > 0 {
		app[0].Post("/foo/bar", fiberH)
		handlerFunc = FiberApp(app[0])
	} else {
		handlerFunc = FiberHandlerFunc(fiberH)
	}

	var r http.Request

	r.Method = expectedMethod
	r.Body = &netHTTPBody{b: []byte(expectedBody)}
	r.RequestURI = expectedRequestURI
	r.ContentLength = int64(expectedContentLength)
	r.Host = expectedHost
	r.RemoteAddr = expectedRemoteAddr
	if checkDefaultPort {
		r.RemoteAddr = "1.2.3.4"
	}

	hdr := make(http.Header)
	for k, v := range expectedHeader {
		hdr.Set(k, v)
	}
	r.Header = hdr

	var w netHTTPResponseWriter
	handlerFunc.ServeHTTP(&w, &r)

	require.Equal(t, http.StatusBadRequest, w.StatusCode(), "StatusCode")
	require.Equal(t, "value1", w.Header().Get("Header1"), "Header1")
	require.Equal(t, "value2", w.Header().Get("Header2"), "Header2")

	expectedResponseBody := fmt.Sprintf("request body is %q", expectedBody)
	require.Equal(t, expectedResponseBody, string(w.body), "Body")
}

Domain

Subdomains

Frequently Asked Questions

What does testFiberToHandlerFunc() do?
testFiberToHandlerFunc() is a function in the fiber codebase, defined in middleware/adaptor/adaptor_test.go.
Where is testFiberToHandlerFunc() defined?
testFiberToHandlerFunc() is defined in middleware/adaptor/adaptor_test.go at line 574.
What calls testFiberToHandlerFunc()?
testFiberToHandlerFunc() is called by 4 function(s): Test_FiberApp, Test_FiberAppDefaultPort, Test_FiberHandler, Test_FiberHandlerDefaultPort.

Analyze Your Own Codebase

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

Try Supermodel Free