Home / Function/ Test_Ctx_Path() — fiber Function Reference

Test_Ctx_Path() — fiber Function Reference

Architecture documentation for the Test_Ctx_Path() function in ctx_test.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  8f2e2831_a14b_eeec_a2cd_9ddaa4e50e74["Test_Ctx_Path()"]
  7b3d4933_5ae3_f84d_ff6d_0cb34e268026["ctx_test.go"]
  8f2e2831_a14b_eeec_a2cd_9ddaa4e50e74 -->|defined in| 7b3d4933_5ae3_f84d_ff6d_0cb34e268026
  style 8f2e2831_a14b_eeec_a2cd_9ddaa4e50e74 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

ctx_test.go lines 3848–3873

func Test_Ctx_Path(t *testing.T) {
	t.Parallel()
	app := New(Config{UnescapePath: true})
	app.Get("/test/:user", func(c Ctx) error {
		require.Equal(t, "/Test/John", c.Path())
		require.Equal(t, "/Test/John", string(c.Request().URI().Path()))
		// not strict && case-insensitive
		require.Equal(t, "/ABC/", c.Path("/ABC/"))
		require.Equal(t, "/ABC/", string(c.Request().URI().Path()))
		require.Equal(t, "/test/john/", c.Path("/test/john/"))
		require.Equal(t, "/test/john/", string(c.Request().URI().Path()))
		return nil
	})

	// test with special chars
	app.Get("/specialChars/:name", func(c Ctx) error {
		require.Equal(t, "/specialChars/créer", c.Path())
		// unescape is also working if you set the path afterwards
		require.Equal(t, "/اختبار/", c.Path("/%D8%A7%D8%AE%D8%AA%D8%A8%D8%A7%D8%B1/"))
		require.Equal(t, "/اختبار/", string(c.Request().URI().Path()))
		return nil
	})
	resp, err := app.Test(httptest.NewRequest(MethodGet, "/specialChars/cr%C3%A9er", http.NoBody))
	require.NoError(t, err, "app.Test(req)")
	require.Equal(t, StatusOK, resp.StatusCode, "Status code")
}

Domain

Subdomains

Defined In

Frequently Asked Questions

What does Test_Ctx_Path() do?
Test_Ctx_Path() is a function in the fiber codebase, defined in ctx_test.go.
Where is Test_Ctx_Path() defined?
Test_Ctx_Path() is defined in ctx_test.go at line 3848.

Analyze Your Own Codebase

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

Try Supermodel Free