go-scopes/tests/etc/etc.go
2023-06-07 09:00:54 +02:00

42 lines
949 B
Go

package etc
import (
"git.sr.ht/~cco/go-scopes/app"
"git.sr.ht/~cco/go-scopes/config"
"git.sr.ht/~cco/go-scopes/lib"
"git.sr.ht/~cco/go-scopes/lib/core"
"git.sr.ht/~cco/go-scopes/testing"
)
func Config() lib.Config {
ovr := Overrides().Use
b := config.MakeBase
cfg := app.Cfg{
Base: b("testing", testing.Start).
WithMessageHandler(core.HandleMessage),
Home: ovr(".", HOME),
AppType: "standard",
}
cfg.Add(config.Cfg{
Base: b("config", config.Start),
ConfigFormat: "etc",
})
cfg.Add(config.Cfg{
Base: b("test-receiver", core.Start),
})
return &cfg
}
// collect here the names of fields that may be overridden via
// explicit Override() or SCOPES_* environment settings.
const (
HOME = "home"
)
// in a production scenario this should be put in a separate
// file `settings.go` that should not be stored in code repository.
func Overrides() config.Settings {
return config.Settings{
HOME: "tests",
}
}