59 lines
1,004 B
Go
59 lines
1,004 B
Go
package config
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestEnvString(t *testing.T) {
|
|
cases := Envs[:]
|
|
cases = append(cases, Env("foobar"), Env(""), Env("42"), Env("✨"))
|
|
for _, e := range cases {
|
|
t.Run(string(e), func(t *testing.T) {
|
|
assert.Equal(t, string(e), e.String())
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestValidEnv(t *testing.T) {
|
|
cases := [...]struct {
|
|
e Env
|
|
exp bool
|
|
}{
|
|
{DEV, true},
|
|
{PROD, true},
|
|
{QA, true},
|
|
{TEST, true},
|
|
{Env("foobar"), false},
|
|
{Env(""), false},
|
|
{Env("✨"), false},
|
|
}
|
|
|
|
for _, c := range cases {
|
|
t.Run(string(c.e), func(t *testing.T) {
|
|
assert.Equal(t, c.exp, ValidEnv(c.e))
|
|
})
|
|
}
|
|
}
|
|
|
|
func TestValidEnvOrDev(t *testing.T) {
|
|
cases := [...]struct {
|
|
give Env
|
|
exp Env
|
|
}{
|
|
{DEV, DEV},
|
|
{PROD, PROD},
|
|
{QA, QA},
|
|
{TEST, TEST},
|
|
{Env("foobar"), DEV},
|
|
{Env(""), DEV},
|
|
{Env("✨"), DEV},
|
|
}
|
|
|
|
for _, c := range cases {
|
|
t.Run(string(c.give), func(t *testing.T) {
|
|
assert.Equal(t, c.exp, ValidEnvOrDev(c.give))
|
|
})
|
|
}
|
|
}
|