Home / Function/ Test_Redirect() — fiber Function Reference

Test_Redirect() — fiber Function Reference

Architecture documentation for the Test_Redirect() function in redirect_test.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  a0b8622f_fcd6_7d72_a79c_d8bfd6baf29c["Test_Redirect()"]
  64bcdd8d_b836_1bcb_1e52_a08c8f16650c["redirect_test.go"]
  a0b8622f_fcd6_7d72_a79c_d8bfd6baf29c -->|defined in| 64bcdd8d_b836_1bcb_1e52_a08c8f16650c
  style a0b8622f_fcd6_7d72_a79c_d8bfd6baf29c fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

middleware/redirect/redirect_test.go lines 12–131

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

	app.Use(New(Config{
		Rules: map[string]string{
			"/default": "google.com",
		},
		StatusCode: fiber.StatusMovedPermanently,
	}))
	app.Use(New(Config{
		Rules: map[string]string{
			"/default/*": "fiber.wiki",
		},
		StatusCode: fiber.StatusTemporaryRedirect,
	}))
	app.Use(New(Config{
		Rules: map[string]string{
			"/redirect/*": "$1",
		},
		StatusCode: fiber.StatusSeeOther,
	}))
	app.Use(New(Config{
		Rules: map[string]string{
			"/pattern/*": "golang.org",
		},
		StatusCode: fiber.StatusFound,
	}))

	app.Use(New(Config{
		Rules: map[string]string{
			"/": "/swagger",
		},
		StatusCode: fiber.StatusMovedPermanently,
	}))
	app.Use(New(Config{
		Rules: map[string]string{
			"/params": "/with_params",
		},
		StatusCode: fiber.StatusMovedPermanently,
	}))

	app.Get("/api/*", func(c fiber.Ctx) error {
		return c.SendString("API")
	})

	app.Get("/new", func(c fiber.Ctx) error {
		return c.SendString("Hello, World!")
	})

	tests := []struct {
		name       string
		url        string
		redirectTo string
		statusCode int
	}{
		{
			name:       "should be returns status StatusFound without a wildcard",
			url:        "/default",
			redirectTo: "google.com",
			statusCode: fiber.StatusMovedPermanently,
		},
		{
			name:       "should be returns status StatusTemporaryRedirect  using wildcard",
			url:        "/default/xyz",
			redirectTo: "fiber.wiki",
			statusCode: fiber.StatusTemporaryRedirect,
		},
		{
			name:       "should be returns status StatusSeeOther without set redirectTo to use the default",
			url:        "/redirect/github.com/gofiber/redirect",
			redirectTo: "github.com/gofiber/redirect",
			statusCode: fiber.StatusSeeOther,
		},
		{
			name:       "should return the status code default",
			url:        "/pattern/xyz",
			redirectTo: "golang.org",
			statusCode: fiber.StatusFound,
		},
		{
			name:       "access URL without rule",

Domain

Subdomains

Frequently Asked Questions

What does Test_Redirect() do?
Test_Redirect() is a function in the fiber codebase, defined in middleware/redirect/redirect_test.go.
Where is Test_Redirect() defined?
Test_Redirect() is defined in middleware/redirect/redirect_test.go at line 12.

Analyze Your Own Codebase

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

Try Supermodel Free