Home / Function/ TestTimeout_ImmediateReturn() — fiber Function Reference

TestTimeout_ImmediateReturn() — fiber Function Reference

Architecture documentation for the TestTimeout_ImmediateReturn() function in timeout_test.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  5ae6a29e_6908_ee19_0ae1_fbf2632dcb76["TestTimeout_ImmediateReturn()"]
  bab1b67e_4e42_cfe9_38ec_3f1f6a839718["timeout_test.go"]
  5ae6a29e_6908_ee19_0ae1_fbf2632dcb76 -->|defined in| bab1b67e_4e42_cfe9_38ec_3f1f6a839718
  style 5ae6a29e_6908_ee19_0ae1_fbf2632dcb76 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

middleware/timeout/timeout_test.go lines 307–340

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

	handlerStarted := make(chan struct{})
	handlerDone := make(chan struct{})

	app.Get("/immediate", New(func(_ fiber.Ctx) error {
		close(handlerStarted)
		// Handler takes 500ms but middleware should return after 20ms
		time.Sleep(500 * time.Millisecond)
		close(handlerDone)
		return nil
	}, Config{Timeout: 20 * time.Millisecond}))

	req := httptest.NewRequest(fiber.MethodGet, "/immediate", http.NoBody)
	start := time.Now()
	resp, err := app.Test(req)
	elapsed := time.Since(start)

	require.NoError(t, err)
	require.Equal(t, fiber.StatusRequestTimeout, resp.StatusCode)
	// Middleware should return immediately after timeout, not wait 500ms
	require.Less(t, elapsed, 100*time.Millisecond, "middleware should return immediately on timeout")

	// Wait for handler to verify it was abandoned properly
	<-handlerStarted
	select {
	case <-handlerDone:
		// Handler finished - cleanup goroutine should have released context
	case <-time.After(1 * time.Second):
		t.Log("Handler still running (expected for abandoned context)")
	}
}

Domain

Subdomains

Frequently Asked Questions

What does TestTimeout_ImmediateReturn() do?
TestTimeout_ImmediateReturn() is a function in the fiber codebase, defined in middleware/timeout/timeout_test.go.
Where is TestTimeout_ImmediateReturn() defined?
TestTimeout_ImmediateReturn() is defined in middleware/timeout/timeout_test.go at line 307.

Analyze Your Own Codebase

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

Try Supermodel Free