Home / Function/ Test_Compress_Different_Level() — fiber Function Reference

Test_Compress_Different_Level() — fiber Function Reference

Architecture documentation for the Test_Compress_Different_Level() function in compress_test.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  d059d385_e43e_ed6d_88ec_9ea7be7d0e8c["Test_Compress_Different_Level()"]
  d6d930a5_a4c6_37a5_5df5_4b38486d6fe6["compress_test.go"]
  d059d385_e43e_ed6d_88ec_9ea7be7d0e8c -->|defined in| d6d930a5_a4c6_37a5_5df5_4b38486d6fe6
  style d059d385_e43e_ed6d_88ec_9ea7be7d0e8c fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

middleware/compress/compress_test.go lines 61–94

func Test_Compress_Different_Level(t *testing.T) {
	t.Parallel()
	levels := []Level{LevelDefault, LevelBestSpeed, LevelBestCompression}
	algorithms := []string{"gzip", "deflate", "br", "zstd"}

	for _, algo := range algorithms {
		for _, level := range levels {
			t.Run(fmt.Sprintf("%s_level %d", algo, level), func(t *testing.T) {
				t.Parallel()
				app := fiber.New()

				app.Use(New(Config{Level: level}))

				app.Get("/", func(c fiber.Ctx) error {
					c.Set(fiber.HeaderContentType, fiber.MIMETextPlainCharsetUTF8)
					return c.Send(filedata)
				})

				req := httptest.NewRequest(fiber.MethodGet, "/", http.NoBody)
				req.Header.Set("Accept-Encoding", algo)

				resp, err := app.Test(req, testConfig)
				require.NoError(t, err, "app.Test(req)")
				require.Equal(t, 200, resp.StatusCode, "Status code")
				require.Equal(t, algo, resp.Header.Get(fiber.HeaderContentEncoding))

				// Validate that the file size has shrunk
				body, err := io.ReadAll(resp.Body)
				require.NoError(t, err)
				require.Less(t, len(body), len(filedata))
			})
		}
	}
}

Domain

Subdomains

Frequently Asked Questions

What does Test_Compress_Different_Level() do?
Test_Compress_Different_Level() is a function in the fiber codebase, defined in middleware/compress/compress_test.go.
Where is Test_Compress_Different_Level() defined?
Test_Compress_Different_Level() is defined in middleware/compress/compress_test.go at line 61.

Analyze Your Own Codebase

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

Try Supermodel Free