evcc-io/cmd/setup_test.go

37 lines
647 B
Go

package cmd
import (
"strings"
"testing"
"github.com/evcc-io/evcc/api"
"github.com/evcc-io/evcc/core"
"github.com/evcc-io/evcc/util"
"github.com/spf13/viper"
)
const sample = `
loadpoints:
- mode: off
`
func TestYamlOff(t *testing.T) {
var conf globalConfig
viper.SetConfigType("yaml")
if err := viper.ReadConfig(strings.NewReader(sample)); err != nil {
t.Error(err)
}
if err := viper.UnmarshalExact(&conf); err != nil {
t.Error(err)
}
var lp core.Loadpoint
if err := util.DecodeOther(conf.Loadpoints[0], &lp); err != nil {
t.Error(err)
}
if lp.Mode != api.ModeOff {
t.Errorf("expected `off`, got %s", lp.Mode)
}
}