From 59d7bb54ff8bed8b3228d9449368a7ab0cf92096 Mon Sep 17 00:00:00 2001 From: andig Date: Sat, 1 Mar 2025 12:12:31 +0100 Subject: [PATCH] chore: add MaxACPower test (#19285) --- meter/battery_power.go | 2 ++ meter/meter_test.go | 30 ++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 meter/meter_test.go 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") +}