41 lines
526 B
Go
41 lines
526 B
Go
package config
|
|
|
|
import (
|
|
"os"
|
|
"testing"
|
|
)
|
|
|
|
func TestNew(t *testing.T) {
|
|
invalidEnv := "&&&&&&"
|
|
keys := []string{
|
|
"DB",
|
|
"DATABASE",
|
|
"ADDR",
|
|
"PATH",
|
|
"USER",
|
|
"USERNAME",
|
|
"PASS",
|
|
"PASSWORD",
|
|
}
|
|
was := make(map[string]string)
|
|
for _, k := range keys {
|
|
v, ok := os.LookupEnv(k)
|
|
if !ok {
|
|
v = invalidEnv
|
|
}
|
|
was[k] = v
|
|
}
|
|
defer func() {
|
|
for k, v := range was {
|
|
if v != invalidEnv {
|
|
os.Setenv(k, v)
|
|
} else {
|
|
os.Unsetenv(k)
|
|
}
|
|
}
|
|
}()
|
|
if err := New(); err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
}
|