Test_Mount_Route_Names() — fiber Function Reference
Architecture documentation for the Test_Mount_Route_Names() function in mount_test.go from the fiber codebase.
Entity Profile
Dependency Diagram
graph TD c0941312_94bc_5377_01f2_c4210ec4c46c["Test_Mount_Route_Names()"] dbd7cc10_1955_3f67_b103_5ae841223af0["mount_test.go"] c0941312_94bc_5377_01f2_c4210ec4c46c -->|defined in| dbd7cc10_1955_3f67_b103_5ae841223af0 style c0941312_94bc_5377_01f2_c4210ec4c46c fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
mount_test.go lines 395–466
func Test_Mount_Route_Names(t *testing.T) {
t.Parallel()
// create sub-app with 2 handlers:
subApp1 := New()
subApp1.Get("/users", func(c Ctx) error {
url, err := c.GetRouteURL("add-user", Map{})
require.NoError(t, err)
require.Equal(t, "/app1/users", url, "handler: app1.add-user") // the prefix is /app1 because of the mount
// if subApp1 is not mounted, expected url just /users
return nil
}).Name("get-users")
subApp1.Post("/users", func(c Ctx) error {
route := c.App().GetRoute("get-users")
require.Equal(t, MethodGet, route.Method, "handler: app1.get-users method")
require.Equal(t, "/app1/users", route.Path, "handler: app1.get-users path")
return nil
}).Name("add-user")
// create sub-app with 2 handlers inside a group:
subApp2 := New()
app2Grp := subApp2.Group("/users").Name("users.")
app2Grp.Get("", emptyHandler).Name("get")
app2Grp.Post("", emptyHandler).Name("add")
// put both sub-apps into root app
rootApp := New()
_ = rootApp.Use("/app1", subApp1)
_ = rootApp.Use("/app2", subApp2)
rootApp.startupProcess()
// take route directly from sub-app
route := subApp1.GetRoute("get-users")
require.Equal(t, MethodGet, route.Method)
require.Equal(t, "/users", route.Path)
route = subApp1.GetRoute("add-user")
require.Equal(t, MethodPost, route.Method)
require.Equal(t, "/users", route.Path)
// take route directly from sub-app with group
route = subApp2.GetRoute("users.get")
require.Equal(t, MethodGet, route.Method)
require.Equal(t, "/users", route.Path)
route = subApp2.GetRoute("users.add")
require.Equal(t, MethodPost, route.Method)
require.Equal(t, "/users", route.Path)
// take route from root app (using names of sub-apps)
route = rootApp.GetRoute("add-user")
require.Equal(t, MethodPost, route.Method)
require.Equal(t, "/app1/users", route.Path)
route = rootApp.GetRoute("users.add")
require.Equal(t, MethodPost, route.Method)
require.Equal(t, "/app2/users", route.Path)
// GetRouteURL inside handler
req := httptest.NewRequest(MethodGet, "/app1/users", http.NoBody)
resp, err := rootApp.Test(req)
require.NoError(t, err, "app.Test(req)")
require.Equal(t, StatusOK, resp.StatusCode, "Status code")
// ctx.App().GetRoute() inside handler
req = httptest.NewRequest(MethodPost, "/app1/users", http.NoBody)
resp, err = rootApp.Test(req)
require.NoError(t, err, "app.Test(req)")
require.Equal(t, StatusOK, resp.StatusCode, "Status code")
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does Test_Mount_Route_Names() do?
Test_Mount_Route_Names() is a function in the fiber codebase, defined in mount_test.go.
Where is Test_Mount_Route_Names() defined?
Test_Mount_Route_Names() is defined in mount_test.go at line 395.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free