32 lines
604 B
Go
32 lines
604 B
Go
package main
|
|
|
|
import (
|
|
"context"
|
|
"testing"
|
|
)
|
|
|
|
func TestNewConfig(t *testing.T) {
|
|
t.Parallel()
|
|
if got, err := newConfigFromEnv(context.Background(), func(k string) string {
|
|
t.Logf("getenv(%s)", k)
|
|
switch k {
|
|
case "PORT":
|
|
return "1"
|
|
case "INITIALIZE_SLACK":
|
|
return "true"
|
|
case "SLACK_CHANNELS":
|
|
return "x,y"
|
|
default:
|
|
return ""
|
|
}
|
|
}); err != nil {
|
|
t.Fatal(err)
|
|
} else if got.Port != 1 {
|
|
t.Error(got)
|
|
} else if !got.InitializeSlack {
|
|
t.Error(got)
|
|
} else if len(got.SlackChannels) != 2 || got.SlackChannels[0] != "x" || got.SlackChannels[1] != "y" {
|
|
t.Error(got)
|
|
}
|
|
}
|