Home / Function/ Test_Logger_ByteSent_Streaming() — fiber Function Reference

Test_Logger_ByteSent_Streaming() — fiber Function Reference

Architecture documentation for the Test_Logger_ByteSent_Streaming() function in logger_test.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  3778668b_ba78_13d6_8b5f_da4e9d3a5d1b["Test_Logger_ByteSent_Streaming()"]
  97b45bc9_01a3_2a9a_4c94_9de1344ca94c["logger_test.go"]
  3778668b_ba78_13d6_8b5f_da4e9d3a5d1b -->|defined in| 97b45bc9_01a3_2a9a_4c94_9de1344ca94c
  style 3778668b_ba78_13d6_8b5f_da4e9d3a5d1b fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

middleware/logger/logger_test.go lines 953–992

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

	buf := bytebufferpool.Get()
	defer bytebufferpool.Put(buf)

	app.Use(New(Config{
		Format: "${bytesReceived} ${bytesSent} ${status}",
		Stream: buf,
	}))

	app.Get("/", func(c fiber.Ctx) error {
		c.Set("Connection", "keep-alive")
		c.Set("Transfer-Encoding", "chunked")
		c.RequestCtx().SetBodyStreamWriter(func(w *bufio.Writer) {
			var i int
			for {
				i++
				msg := fmt.Sprintf("%d - the time is %v", i, time.Now())
				fmt.Fprintf(w, "data: Message: %s\n\n", msg)
				err := w.Flush()
				if err != nil {
					break
				}
				if i == 10 {
					break
				}
			}
		})
		return nil
	})

	resp, err := app.Test(httptest.NewRequest(fiber.MethodGet, "/", http.NoBody))
	require.NoError(t, err)
	require.Equal(t, fiber.StatusOK, resp.StatusCode)

	// -2 means identity, -1 means chunked, 200 status
	require.Equal(t, "-2 -1 200", buf.String())
}

Domain

Subdomains

Frequently Asked Questions

What does Test_Logger_ByteSent_Streaming() do?
Test_Logger_ByteSent_Streaming() is a function in the fiber codebase, defined in middleware/logger/logger_test.go.
Where is Test_Logger_ByteSent_Streaming() defined?
Test_Logger_ByteSent_Streaming() is defined in middleware/logger/logger_test.go at line 953.

Analyze Your Own Codebase

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

Try Supermodel Free