diff --git a/meter/battery_power.go b/meter/battery_power.go index 100cc5f54..c270b01d8 100644 --- a/meter/battery_power.go +++ b/meter/battery_power.go @@ -4,6 +4,8 @@ type maxpower struct { MaxACPower float64 } +// var _ api.MaxACPowerGetter = (*maxpower)(nil) + // MaxACPowerDecorator returns the max AC power decorator func (m *maxpower) Decorator() func() float64 { if m.MaxACPower == 0 { diff --git a/meter/meter_test.go b/meter/meter_test.go new file mode 100644 index 000000000..9316d3c85 --- /dev/null +++ b/meter/meter_test.go @@ -0,0 +1,30 @@ +package meter + +import ( + "context" + "testing" + + "github.com/evcc-io/evcc/api" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" +) + +func TestACPower(t *testing.T) { + m, err := NewConfigurableFromConfig(context.TODO(), map[string]any{ + "capacity": 23, + "soc": map[string]any{ + "source": "const", + "value": 47, + }, + "maxacpower": 1000, + "power": map[string]any{ + "source": "const", + "value": 1000, + }, + }) + require.NoError(t, err) + _, ok := m.(api.BatteryCapacity) + assert.True(t, ok, "api.BatteryCapacity") + _, ok = m.(api.MaxACPowerGetter) + assert.True(t, ok, "api.MaxACPowerGetter") +}