Home / File/ cors_test.go — fiber Source File

cors_test.go — fiber Source File

Architecture documentation for cors_test.go, a go file in the fiber codebase. 1 imports, 0 dependents.

File go FiberCore Adapters 1 imports 37 functions 2 classes

Entity Profile

Dependency Diagram

graph LR
  e59a43fd_cfa4_0f6b_1938_4a08e36ad74e["cors_test.go"]
  c0b86961_3ef1_0168_52fc_98627566ed27["bytes"]
  e59a43fd_cfa4_0f6b_1938_4a08e36ad74e --> c0b86961_3ef1_0168_52fc_98627566ed27
  style e59a43fd_cfa4_0f6b_1938_4a08e36ad74e fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

package cors

import (
	"bytes"
	"net/http"
	"net/http/httptest"
	"os"
	"strings"
	"testing"

	"github.com/gofiber/fiber/v3"
	"github.com/gofiber/fiber/v3/log"
	"github.com/stretchr/testify/require"
	"github.com/valyala/fasthttp"
)

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

	testDefaultOrEmptyConfig(t, app)
}

func Test_CORS_Empty_Config(t *testing.T) {
	t.Parallel()
	app := fiber.New()
	app.Use(New(Config{}))

	testDefaultOrEmptyConfig(t, app)
}

func Test_CORS_WildcardHeaders(t *testing.T) {
	t.Parallel()
	app := fiber.New()
	app.Use(New(Config{
		AllowMethods:  []string{"*"},
		AllowHeaders:  []string{"*"},
		ExposeHeaders: []string{"*"},
	}))

	h := app.Handler()

	// Test preflight request
	ctx := &fasthttp.RequestCtx{}
	ctx.Request.Header.SetMethod(fiber.MethodOptions)
	ctx.Request.Header.Set(fiber.HeaderAccessControlRequestMethod, fiber.MethodGet)
	ctx.Request.Header.Set(fiber.HeaderOrigin, "http://localhost")
	h(ctx)

	require.Equal(t, "*", string(ctx.Response.Header.Peek(fiber.HeaderAccessControlAllowOrigin)))
	require.Empty(t, string(ctx.Response.Header.Peek(fiber.HeaderAccessControlAllowCredentials)))
	require.Equal(t, "*", string(ctx.Response.Header.Peek(fiber.HeaderAccessControlAllowMethods)))
	require.Equal(t, "*", string(ctx.Response.Header.Peek(fiber.HeaderAccessControlAllowHeaders)))
	require.Equal(t, "*", string(ctx.Response.Header.Peek(fiber.HeaderAccessControlExposeHeaders)))
}

func Test_CORS_Negative_MaxAge(t *testing.T) {
	t.Parallel()

// ... (1582 more lines)

Domain

Subdomains

Classes

Types

Dependencies

  • bytes

Frequently Asked Questions

What does cors_test.go do?
cors_test.go is a source file in the fiber codebase, written in go. It belongs to the FiberCore domain, Adapters subdomain.
What functions are defined in cors_test.go?
cors_test.go defines 37 function(s): Benchmark_CORS_NewHandler, Benchmark_CORS_NewHandlerPreflight, Benchmark_CORS_NewHandlerPreflightSingleOrigin, Benchmark_CORS_NewHandlerPreflightSingleOrigin_Parallel, Benchmark_CORS_NewHandlerPreflightWildcard, Benchmark_CORS_NewHandlerPreflightWildcard_Parallel, Benchmark_CORS_NewHandlerPreflight_Parallel, Benchmark_CORS_NewHandlerSingleOrigin, Benchmark_CORS_NewHandlerSingleOrigin_Parallel, Benchmark_CORS_NewHandlerWildcard, and 27 more.
What does cors_test.go depend on?
cors_test.go imports 1 module(s): bytes.
Where is cors_test.go in the architecture?
cors_test.go is located at middleware/cors/cors_test.go (domain: FiberCore, subdomain: Adapters, directory: middleware/cors).

Analyze Your Own Codebase

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

Try Supermodel Free