envvar_test.go — fiber Source File
Architecture documentation for envvar_test.go, a go file in the fiber codebase. 1 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR c03ebe64_8030_fb61_5944_e77fa44dc542["envvar_test.go"] cc7104af_aece_1fe5_3985_791c7f34910c["context"] c03ebe64_8030_fb61_5944_e77fa44dc542 --> cc7104af_aece_1fe5_3985_791c7f34910c style c03ebe64_8030_fb61_5944_e77fa44dc542 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
package envvar
import (
"context"
"encoding/json"
"io"
"net/http"
"net/http/httptest"
"testing"
"github.com/gofiber/fiber/v3"
"github.com/stretchr/testify/require"
)
func Test_EnvVarStructWithExportVars(t *testing.T) {
t.Setenv("testKey", "testEnvValue")
t.Setenv("anotherEnvKey", "anotherEnvVal")
vars := newEnvVar(Config{
ExportVars: map[string]string{"testKey": "", "testDefaultKey": "testDefaultVal"},
})
require.Equal(t, "testEnvValue", vars.Vars["testKey"])
require.Equal(t, "testDefaultVal", vars.Vars["testDefaultKey"])
require.Empty(t, vars.Vars["anotherEnvKey"])
}
func Test_EnvVarHandler(t *testing.T) {
t.Setenv("testKey", "testVal")
expectedEnvVarResponse, err := json.Marshal(
struct {
Vars map[string]string `json:"vars"`
}{
Vars: map[string]string{"testKey": "testVal"},
})
require.NoError(t, err)
app := fiber.New()
app.Use("/envvars", New(Config{
ExportVars: map[string]string{"testKey": ""},
}))
req, err := http.NewRequestWithContext(context.Background(), fiber.MethodGet, "http://localhost/envvars", http.NoBody)
require.NoError(t, err)
resp, err := app.Test(req)
require.NoError(t, err)
respBody, err := io.ReadAll(resp.Body)
require.NoError(t, err)
require.Equal(t, expectedEnvVarResponse, respBody)
}
func Test_EnvVarHandlerNotMatched(t *testing.T) {
app := fiber.New()
app.Use("/envvars", New(Config{
ExportVars: map[string]string{"testKey": ""},
}))
app.Get("/another-path", func(ctx fiber.Ctx) error {
// ... (97 more lines)
Domain
Subdomains
Functions
Classes
Types
Dependencies
- context
Source
Frequently Asked Questions
What does envvar_test.go do?
envvar_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 envvar_test.go?
envvar_test.go defines 7 function(s): Test_EnvVarHandler, Test_EnvVarHandlerDefaultConfig, Test_EnvVarHandlerHead, Test_EnvVarHandlerMethod, Test_EnvVarHandlerNotMatched, Test_EnvVarHandlerSpecialValue, Test_EnvVarStructWithExportVars.
What does envvar_test.go depend on?
envvar_test.go imports 1 module(s): context.
Where is envvar_test.go in the architecture?
envvar_test.go is located at middleware/envvar/envvar_test.go (domain: FiberCore, subdomain: Adapters, directory: middleware/envvar).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free