Home / Function/ Test_Session_NewWithStore() — fiber Function Reference

Test_Session_NewWithStore() — fiber Function Reference

Architecture documentation for the Test_Session_NewWithStore() function in middleware_test.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  7369e161_229a_2281_c325_dc19452c5e00["Test_Session_NewWithStore()"]
  7a9a2d4e_2e85_3a21_3ac8_2223cd90e48f["middleware_test.go"]
  7369e161_229a_2281_c325_dc19452c5e00 -->|defined in| 7a9a2d4e_2e85_3a21_3ac8_2223cd90e48f
  style 7369e161_229a_2281_c325_dc19452c5e00 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

middleware/session/middleware_test.go lines 330–373

func Test_Session_NewWithStore(t *testing.T) {
	t.Parallel()
	app := fiber.New()

	app.Use(New())

	app.Get("/", func(c fiber.Ctx) error {
		sess := FromContext(c)
		id := sess.ID()
		return c.SendString("value=" + id)
	})
	app.Post("/", func(c fiber.Ctx) error {
		sess := FromContext(c)
		id := sess.ID()
		c.Cookie(&fiber.Cookie{
			Name:  "session_id",
			Value: id,
		})
		return nil
	})

	h := app.Handler()

	// Test GET request without cookie
	ctx := &fasthttp.RequestCtx{}
	ctx.Request.Header.SetMethod(fiber.MethodGet)
	h(ctx)
	require.Equal(t, fiber.StatusOK, ctx.Response.StatusCode())
	// Get session cookie
	token := string(ctx.Response.Header.Peek(fiber.HeaderSetCookie))
	require.NotEmpty(t, token, "Expected Set-Cookie header to be present")
	tokenParts := strings.SplitN(strings.SplitN(token, ";", 2)[0], "=", 2)
	require.Len(t, tokenParts, 2, "Expected Set-Cookie header to contain a token")
	token = tokenParts[1]
	require.Equal(t, "value="+token, string(ctx.Response.Body()))

	// Test GET request with cookie
	ctx = &fasthttp.RequestCtx{}
	ctx.Request.Header.SetMethod(fiber.MethodGet)
	ctx.Request.Header.SetCookie("session_id", token)
	h(ctx)
	require.Equal(t, fiber.StatusOK, ctx.Response.StatusCode())
	require.Equal(t, "value="+token, string(ctx.Response.Body()))
}

Subdomains

Frequently Asked Questions

What does Test_Session_NewWithStore() do?
Test_Session_NewWithStore() is a function in the fiber codebase, defined in middleware/session/middleware_test.go.
Where is Test_Session_NewWithStore() defined?
Test_Session_NewWithStore() is defined in middleware/session/middleware_test.go at line 330.

Analyze Your Own Codebase

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

Try Supermodel Free