chore: refactor mock apis

This commit is contained in:
andig 2023-11-01 12:23:29 +01:00
parent 514211756d
commit 245730abf1
13 changed files with 109 additions and 165 deletions

View file

@ -9,7 +9,7 @@ import (
"time"
)
//go:generate mockgen -package mock -destination ../mock/mock_api.go github.com/evcc-io/evcc/api Charger,ChargeState,PhaseSwitcher,Identifier,Meter,MeterEnergy,Vehicle,ChargeRater,Battery,Tariff
//go:generate mockgen -package api -destination api.go github.com/evcc-io/evcc/api Charger,ChargeState,PhaseSwitcher,Identifier,Meter,MeterEnergy,Vehicle,ChargeRater,Battery,Tariff
// ChargeMode is the charge operation mode. Valid values are off, now, minpv and pv
type ChargeMode string

View file

@ -1,13 +1,12 @@
// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/evcc-io/evcc/api (interfaces: Charger,ChargeState,PhaseSwitcher,Identifier,Meter,MeterEnergy,Vehicle,ChargeRater,Battery,Tariff)
// Package mock is a generated GoMock package.
package mock
// Package api is a generated GoMock package.
package api
import (
reflect "reflect"
api "github.com/evcc-io/evcc/api"
gomock "github.com/golang/mock/gomock"
)
@ -78,10 +77,10 @@ func (mr *MockChargerMockRecorder) MaxCurrent(arg0 interface{}) *gomock.Call {
}
// Status mocks base method.
func (m *MockCharger) Status() (api.ChargeStatus, error) {
func (m *MockCharger) Status() (ChargeStatus, error) {
m.ctrl.T.Helper()
ret := m.ctrl.Call(m, "Status")
ret0, _ := ret[0].(api.ChargeStatus)
ret0, _ := ret[0].(ChargeStatus)
ret1, _ := ret[1].(error)
return ret0, ret1
}
@ -116,10 +115,10 @@ func (m *MockChargeState) EXPECT() *MockChargeStateMockRecorder {
}
// Status mocks base method.
func (m *MockChargeState) Status() (api.ChargeStatus, error) {
func (m *MockChargeState) Status() (ChargeStatus, error) {
m.ctrl.T.Helper()
ret := m.ctrl.Call(m, "Status")
ret0, _ := ret[0].(api.ChargeStatus)
ret0, _ := ret[0].(ChargeStatus)
ret1, _ := ret[1].(error)
return ret0, ret1
}
@ -347,10 +346,10 @@ func (mr *MockVehicleMockRecorder) Identifiers() *gomock.Call {
}
// OnIdentified mocks base method.
func (m *MockVehicle) OnIdentified() api.ActionConfig {
func (m *MockVehicle) OnIdentified() ActionConfig {
m.ctrl.T.Helper()
ret := m.ctrl.Call(m, "OnIdentified")
ret0, _ := ret[0].(api.ActionConfig)
ret0, _ := ret[0].(ActionConfig)
return ret0
}
@ -515,10 +514,10 @@ func (m *MockTariff) EXPECT() *MockTariffMockRecorder {
}
// Rates mocks base method.
func (m *MockTariff) Rates() (api.Rates, error) {
func (m *MockTariff) Rates() (Rates, error) {
m.ctrl.T.Helper()
ret := m.ctrl.Call(m, "Rates")
ret0, _ := ret[0].(api.Rates)
ret0, _ := ret[0].(Rates)
ret1, _ := ret[1].(error)
return ret0, ret1
}
@ -530,10 +529,10 @@ func (mr *MockTariffMockRecorder) Rates() *gomock.Call {
}
// Type mocks base method.
func (m *MockTariff) Type() api.TariffType {
func (m *MockTariff) Type() TariffType {
m.ctrl.T.Helper()
ret := m.ctrl.Call(m, "Type")
ret0, _ := ret[0].(api.TariffType)
ret0, _ := ret[0].(TariffType)
return ret0
}

View file

@ -5,7 +5,6 @@ import (
"github.com/evcc-io/evcc/api"
"github.com/evcc-io/evcc/core/loadpoint"
"github.com/evcc-io/evcc/mock"
"github.com/evcc-io/evcc/util"
"github.com/golang/mock/gomock"
)
@ -14,12 +13,12 @@ func TestVehicleDetectByStatus(t *testing.T) {
ctrl := gomock.NewController(t)
type vehicle struct {
*mock.MockVehicle
*mock.MockChargeState
*api.MockVehicle
*api.MockChargeState
}
v1 := &vehicle{mock.NewMockVehicle(ctrl), mock.NewMockChargeState(ctrl)}
v2 := &vehicle{mock.NewMockVehicle(ctrl), mock.NewMockChargeState(ctrl)}
v1 := &vehicle{api.NewMockVehicle(ctrl), api.NewMockChargeState(ctrl)}
v2 := &vehicle{api.NewMockVehicle(ctrl), api.NewMockChargeState(ctrl)}
type testcase struct {
string

View file

@ -6,7 +6,7 @@ import (
"github.com/evcc-io/evcc/api"
)
//go:generate mockgen -package loadpoint -destination mock.go -mock_names API=MockAPI github.com/evcc-io/evcc/core/loadpoint API
//go:generate mockgen -package loadpoint -destination api.go -mock_names API=MockAPI github.com/evcc-io/evcc/core/loadpoint API
// Controller gives access to loadpoint
type Controller interface {

View file

@ -8,7 +8,6 @@ import (
evbus "github.com/asaskevich/EventBus"
"github.com/benbjohnson/clock"
"github.com/evcc-io/evcc/api"
"github.com/evcc-io/evcc/mock"
"github.com/evcc-io/evcc/util"
"github.com/golang/mock/gomock"
)
@ -76,15 +75,15 @@ func TestMaxActivePhases(t *testing.T) {
t.Log(dflt, tc)
plainCharger := mock.NewMockCharger(ctrl)
plainCharger := api.NewMockCharger(ctrl)
// 1p3p
var phaseCharger *mock.MockPhaseSwitcher
var phaseCharger *api.MockPhaseSwitcher
if tc.capable == 0 {
phaseCharger = mock.NewMockPhaseSwitcher(ctrl)
phaseCharger = api.NewMockPhaseSwitcher(ctrl)
}
vehicle := mock.NewMockVehicle(ctrl)
vehicle := api.NewMockVehicle(ctrl)
vehicle.EXPECT().Phases().Return(tc.vehicle).MinTimes(1)
lp := &Loadpoint{
@ -96,14 +95,14 @@ func TestMaxActivePhases(t *testing.T) {
if phaseCharger != nil {
lp.charger = struct {
*mock.MockCharger
*mock.MockPhaseSwitcher
*api.MockCharger
*api.MockPhaseSwitcher
}{
plainCharger, phaseCharger,
}
} else {
lp.charger = struct {
*mock.MockCharger
*api.MockCharger
}{
plainCharger,
}
@ -162,17 +161,17 @@ func TestPvScalePhases(t *testing.T) {
for _, tc := range phaseTests {
t.Log(tc)
plainCharger := mock.NewMockCharger(ctrl)
plainCharger := api.NewMockCharger(ctrl)
plainCharger.EXPECT().Enabled().Return(true, nil)
plainCharger.EXPECT().MaxCurrent(int64(minA)).Return(nil) // MaxCurrentEx not implemented
// 1p3p
var phaseCharger *mock.MockPhaseSwitcher
var phaseCharger *api.MockPhaseSwitcher
if tc.capable == 0 {
phaseCharger = mock.NewMockPhaseSwitcher(ctrl)
phaseCharger = api.NewMockPhaseSwitcher(ctrl)
}
vehicle := mock.NewMockVehicle(ctrl)
vehicle := api.NewMockVehicle(ctrl)
vehicle.EXPECT().Phases().Return(tc.vehicle).MinTimes(1)
lp := &Loadpoint{
@ -195,14 +194,14 @@ func TestPvScalePhases(t *testing.T) {
if phaseCharger != nil {
lp.charger = struct {
*mock.MockCharger
*mock.MockPhaseSwitcher
*api.MockCharger
*api.MockPhaseSwitcher
}{
plainCharger, phaseCharger,
}
} else {
lp.charger = struct {
*mock.MockCharger
*api.MockCharger
}{
plainCharger,
}
@ -259,11 +258,11 @@ func TestPvScalePhases(t *testing.T) {
func TestPvScalePhasesTimer(t *testing.T) {
ctrl := gomock.NewController(t)
charger := &struct {
*mock.MockCharger
*mock.MockPhaseSwitcher
*api.MockCharger
*api.MockPhaseSwitcher
}{
mock.NewMockCharger(ctrl),
mock.NewMockPhaseSwitcher(ctrl),
api.NewMockCharger(ctrl),
api.NewMockPhaseSwitcher(ctrl),
}
dt := time.Minute
@ -416,15 +415,15 @@ func TestScalePhasesIfAvailable(t *testing.T) {
for _, tc := range tc {
t.Log(tc)
plainCharger := mock.NewMockCharger(ctrl)
phaseCharger := mock.NewMockPhaseSwitcher(ctrl)
plainCharger := api.NewMockCharger(ctrl)
phaseCharger := api.NewMockPhaseSwitcher(ctrl)
lp := &Loadpoint{
log: util.NewLogger("foo"),
clock: clock.NewMock(),
charger: struct {
*mock.MockCharger
*mock.MockPhaseSwitcher
*api.MockCharger
*api.MockPhaseSwitcher
}{
plainCharger,
phaseCharger,

View file

@ -7,7 +7,6 @@ import (
"github.com/benbjohnson/clock"
"github.com/evcc-io/evcc/api"
"github.com/evcc-io/evcc/core/session"
"github.com/evcc-io/evcc/mock"
serverdb "github.com/evcc-io/evcc/server/db"
"github.com/evcc-io/evcc/util"
"github.com/golang/mock/gomock"
@ -27,8 +26,8 @@ func TestSession(t *testing.T) {
ctrl := gomock.NewController(t)
defer ctrl.Finish()
mm := mock.NewMockMeter(ctrl)
me := mock.NewMockMeterEnergy(ctrl)
mm := api.NewMockMeter(ctrl)
me := api.NewMockMeterEnergy(ctrl)
type EnergyDecorator struct {
api.Meter
@ -114,11 +113,11 @@ func TestCloseSessionsOnStartup(t *testing.T) {
clock := clock.NewMock()
//test data, creates 6 sessions for each loadpoint, 3rd and 6th are "unfinished"
// test data, creates 6 sessions for each loadpoint, 3rd and 6th are "unfinished"
var sessions1 []*session.Session = createMockSessions(db1, clock)
var sessions2 []*session.Session = createMockSessions(db2, clock)
//write interleaved for two loadpoints
// write interleaved for two loadpoints
for index, session := range sessions1 {
db1.Persist(session)
db2.Persist(sessions2[index])
@ -127,24 +126,24 @@ func TestCloseSessionsOnStartup(t *testing.T) {
err = db1.ClosePendingSessionsInHistory(1000)
assert.NoError(t, err)
//check fixed sessions for db1
// check fixed sessions for db1
var db1Sessions session.Sessions
err = serverdb.Instance.Where("Loadpoint = ?", "foo").Order("ID").Find(&db1Sessions).Error
assert.NoError(t, err)
assert.Len(t, db1Sessions, 6)
//check fixed history
// check fixed history
for _, s := range db1Sessions[:5] {
assert.NotEmpty(t, s.MeterStop)
assert.Equal(t, float64(10), s.ChargedEnergy)
t.Logf("session: %+v", s)
}
//check fixed most recent record
// check fixed most recent record
assert.NotEmpty(t, db1Sessions[5].MeterStop)
assert.Equal(t, float64(940), db1Sessions[5].ChargedEnergy)
//ensure no side effects on loadpoint 2 data, i.e. data left unfixed
// ensure no side effects on loadpoint 2 data, i.e. data left unfixed
var db2Sessions session.Sessions
err = serverdb.Instance.Where("Loadpoint = ?", "bar").Order("ID").Find(&db2Sessions).Error
assert.NoError(t, err)
@ -169,7 +168,7 @@ func createMockSessions(db *session.DB, clock *clock.Mock) []*session.Session {
session := db.New(meter1Start)
session.Created = clock.Now().Add(1 * time.Minute)
//create every third session as incomplete
// create every third session as incomplete
if i%3 == 0 {
sessions = append(sessions, session)
continue

View file

@ -5,7 +5,6 @@ import (
"github.com/benbjohnson/clock"
"github.com/evcc-io/evcc/api"
"github.com/evcc-io/evcc/mock"
"github.com/evcc-io/evcc/util"
"github.com/golang/mock/gomock"
"github.com/stretchr/testify/assert"
@ -28,7 +27,7 @@ func TestSyncCharger(t *testing.T) {
for _, tc := range tc {
t.Logf("%+v", tc)
charger := mock.NewMockCharger(ctrl)
charger := api.NewMockCharger(ctrl)
charger.EXPECT().Enabled().Return(tc.actual, nil).AnyTimes()
if tc.status == api.StatusC {

View file

@ -8,7 +8,6 @@ import (
"github.com/benbjohnson/clock"
"github.com/evcc-io/evcc/api"
"github.com/evcc-io/evcc/core/soc"
"github.com/evcc-io/evcc/mock"
"github.com/evcc-io/evcc/push"
"github.com/evcc-io/evcc/util"
"github.com/golang/mock/gomock"
@ -71,7 +70,7 @@ func attachChannels(lp *Loadpoint, uiChan chan util.Param, pushChan chan push.Ev
func attachListeners(t *testing.T, lp *Loadpoint) {
Voltage = 230 // V
if charger, ok := lp.charger.(*mock.MockCharger); ok && charger != nil {
if charger, ok := lp.charger.(*api.MockCharger); ok && charger != nil {
charger.EXPECT().Enabled().Return(true, nil)
charger.EXPECT().MaxCurrent(int64(lp.MinCurrent)).Return(nil)
}
@ -104,46 +103,46 @@ func TestUpdatePowerZero(t *testing.T) {
tc := []struct {
status api.ChargeStatus
mode api.ChargeMode
expect func(h *mock.MockCharger)
expect func(h *api.MockCharger)
}{
{api.StatusA, api.ModeOff, func(h *mock.MockCharger) {
{api.StatusA, api.ModeOff, func(h *api.MockCharger) {
h.EXPECT().Enable(false)
}},
{api.StatusA, api.ModeNow, func(h *mock.MockCharger) {
{api.StatusA, api.ModeNow, func(h *api.MockCharger) {
h.EXPECT().Enable(false)
}},
{api.StatusA, api.ModeMinPV, func(h *mock.MockCharger) {
{api.StatusA, api.ModeMinPV, func(h *api.MockCharger) {
h.EXPECT().Enable(false)
}},
{api.StatusA, api.ModePV, func(h *mock.MockCharger) {
{api.StatusA, api.ModePV, func(h *api.MockCharger) {
h.EXPECT().Enable(false) // zero since update called with 0
}},
{api.StatusB, api.ModeOff, func(h *mock.MockCharger) {
{api.StatusB, api.ModeOff, func(h *api.MockCharger) {
h.EXPECT().Enable(false)
}},
{api.StatusB, api.ModeNow, func(h *mock.MockCharger) {
{api.StatusB, api.ModeNow, func(h *api.MockCharger) {
h.EXPECT().MaxCurrent(int64(maxA)) // true
}},
{api.StatusB, api.ModeMinPV, func(h *mock.MockCharger) {
{api.StatusB, api.ModeMinPV, func(h *api.MockCharger) {
// MaxCurrent omitted since identical value
}},
{api.StatusB, api.ModePV, func(h *mock.MockCharger) {
{api.StatusB, api.ModePV, func(h *api.MockCharger) {
// zero since update called with 0
// force = false due to pv mode climater check
h.EXPECT().Enable(false)
}},
{api.StatusC, api.ModeOff, func(h *mock.MockCharger) {
{api.StatusC, api.ModeOff, func(h *api.MockCharger) {
h.EXPECT().Enable(false)
}},
{api.StatusC, api.ModeNow, func(h *mock.MockCharger) {
{api.StatusC, api.ModeNow, func(h *api.MockCharger) {
h.EXPECT().MaxCurrent(int64(maxA)) // true
}},
{api.StatusC, api.ModeMinPV, func(h *mock.MockCharger) {
{api.StatusC, api.ModeMinPV, func(h *api.MockCharger) {
// MaxCurrent omitted since identical value
}},
{api.StatusC, api.ModePV, func(h *mock.MockCharger) {
{api.StatusC, api.ModePV, func(h *api.MockCharger) {
// omitted since PV balanced
}},
}
@ -153,7 +152,7 @@ func TestUpdatePowerZero(t *testing.T) {
clck := clock.NewMock()
ctrl := gomock.NewController(t)
charger := mock.NewMockCharger(ctrl)
charger := api.NewMockCharger(ctrl)
lp := &Loadpoint{
log: util.NewLogger("foo"),
@ -305,7 +304,7 @@ func TestPVHysteresis(t *testing.T) {
clck := clock.NewMock()
ctrl := gomock.NewController(t)
charger := mock.NewMockCharger(ctrl)
charger := api.NewMockCharger(ctrl)
Voltage = 100
lp := &Loadpoint{
@ -383,8 +382,8 @@ func TestPVHysteresisForStatusOtherThanC(t *testing.T) {
func TestDisableAndEnableAtTargetSoc(t *testing.T) {
clock := clock.NewMock()
ctrl := gomock.NewController(t)
charger := mock.NewMockCharger(ctrl)
vehicle := mock.NewMockVehicle(ctrl)
charger := api.NewMockCharger(ctrl)
vehicle := api.NewMockVehicle(ctrl)
// wrap vehicle with estimator
vehicle.EXPECT().Capacity().Return(float64(10))
@ -465,7 +464,7 @@ func TestDisableAndEnableAtTargetSoc(t *testing.T) {
func TestSetModeAndSocAtDisconnect(t *testing.T) {
clock := clock.NewMock()
ctrl := gomock.NewController(t)
charger := mock.NewMockCharger(ctrl)
charger := api.NewMockCharger(ctrl)
lp := &Loadpoint{
log: util.NewLogger("foo"),
@ -537,8 +536,8 @@ func cacheExpecter(t *testing.T, lp *Loadpoint) (*util.Cache, func(key string, v
func TestChargedEnergyAtDisconnect(t *testing.T) {
clock := clock.NewMock()
ctrl := gomock.NewController(t)
charger := mock.NewMockCharger(ctrl)
rater := mock.NewMockChargeRater(ctrl)
charger := api.NewMockCharger(ctrl)
rater := api.NewMockChargeRater(ctrl)
lp := &Loadpoint{
log: util.NewLogger("foo"),
@ -615,7 +614,7 @@ func TestChargedEnergyAtDisconnect(t *testing.T) {
func TestTargetSoc(t *testing.T) {
ctrl := gomock.NewController(t)
vhc := mock.NewMockVehicle(ctrl)
vhc := api.NewMockVehicle(ctrl)
tc := []struct {
vehicle api.Vehicle
@ -742,10 +741,10 @@ func TestSocPoll(t *testing.T) {
func TestMinSoc(t *testing.T) {
ctrl := gomock.NewController(t)
vhc := mock.NewMockVehicle(ctrl)
vhc := api.NewMockVehicle(ctrl)
tc := []struct {
vehicle *mock.MockVehicle
vehicle *api.MockVehicle
min int
soc float64
energy float64

View file

@ -10,7 +10,6 @@ import (
"github.com/evcc-io/evcc/api"
"github.com/evcc-io/evcc/core/coordinator"
"github.com/evcc-io/evcc/core/soc"
"github.com/evcc-io/evcc/mock"
"github.com/evcc-io/evcc/util"
"github.com/golang/mock/gomock"
"github.com/stretchr/testify/assert"
@ -20,11 +19,11 @@ func TestPublishSocAndRange(t *testing.T) {
ctrl := gomock.NewController(t)
clck := clock.NewMock()
charger := mock.NewMockCharger(ctrl)
charger := api.NewMockCharger(ctrl)
charger.EXPECT().MaxCurrent(int64(maxA)).AnyTimes()
charger.EXPECT().Enabled().Return(true, nil).AnyTimes()
vehicle := mock.NewMockVehicle(ctrl)
vehicle := api.NewMockVehicle(ctrl)
vehicle.EXPECT().Title().Return("target").AnyTimes()
vehicle.EXPECT().Capacity().AnyTimes()
vehicle.EXPECT().Phases().AnyTimes()
@ -82,8 +81,8 @@ func TestPublishSocAndRange(t *testing.T) {
func TestVehicleDetectByID(t *testing.T) {
ctrl := gomock.NewController(t)
v1 := mock.NewMockVehicle(ctrl)
v2 := mock.NewMockVehicle(ctrl)
v1 := api.NewMockVehicle(ctrl)
v2 := api.NewMockVehicle(ctrl)
type testcase struct {
string
@ -150,7 +149,7 @@ func TestDefaultVehicle(t *testing.T) {
mode := api.ModePV
targetsoc := 80
dflt := mock.NewMockVehicle(ctrl)
dflt := api.NewMockVehicle(ctrl)
dflt.EXPECT().Title().Return("default").AnyTimes()
dflt.EXPECT().Icon().Return("").AnyTimes()
dflt.EXPECT().Capacity().AnyTimes()
@ -160,7 +159,7 @@ func TestDefaultVehicle(t *testing.T) {
TargetSoc: &targetsoc,
}).AnyTimes()
vehicle := mock.NewMockVehicle(ctrl)
vehicle := api.NewMockVehicle(ctrl)
vehicle.EXPECT().Title().Return("target").AnyTimes()
vehicle.EXPECT().Icon().Return("").AnyTimes()
vehicle.EXPECT().Capacity().AnyTimes()
@ -244,7 +243,7 @@ func TestApplyVehicleDefaults(t *testing.T) {
// onDefault config
od := newConfig(api.ModeOff, 6, 16, nil)
vehicle := mock.NewMockVehicle(ctrl)
vehicle := api.NewMockVehicle(ctrl)
vehicle.EXPECT().Title().Return("it's me").AnyTimes()
vehicle.EXPECT().Icon().Return("").AnyTimes()
vehicle.EXPECT().Capacity().AnyTimes()
@ -275,11 +274,11 @@ func TestApplyVehicleDefaults(t *testing.T) {
// identify vehicle by id
charger := struct {
*mock.MockCharger
*mock.MockIdentifier
*api.MockCharger
*api.MockIdentifier
}{
MockCharger: mock.NewMockCharger(ctrl),
MockIdentifier: mock.NewMockIdentifier(ctrl),
MockCharger: api.NewMockCharger(ctrl),
MockIdentifier: api.NewMockIdentifier(ctrl),
}
lp.charger = charger
@ -308,11 +307,11 @@ func TestReconnectVehicle(t *testing.T) {
clck := clock.NewMock()
type vehicleT struct {
*mock.MockVehicle
*mock.MockChargeState
*api.MockVehicle
*api.MockChargeState
}
vehicle := &vehicleT{mock.NewMockVehicle(ctrl), mock.NewMockChargeState(ctrl)}
vehicle := &vehicleT{api.NewMockVehicle(ctrl), api.NewMockChargeState(ctrl)}
vehicle.MockVehicle.EXPECT().Title().Return("vehicle").AnyTimes()
vehicle.MockVehicle.EXPECT().Icon().Return("").AnyTimes()
vehicle.MockVehicle.EXPECT().Capacity().AnyTimes()
@ -321,7 +320,7 @@ func TestReconnectVehicle(t *testing.T) {
vehicle.MockVehicle.EXPECT().Identifiers().AnyTimes().Return(tc.vehicleId)
vehicle.MockVehicle.EXPECT().Soc().Return(0.0, nil).AnyTimes()
charger := mock.NewMockCharger(ctrl)
charger := api.NewMockCharger(ctrl)
charger.EXPECT().Status().Return(api.StatusB, nil).AnyTimes()
lp := &Loadpoint{

View file

@ -7,7 +7,6 @@ import (
"github.com/benbjohnson/clock"
"github.com/evcc-io/evcc/api"
"github.com/evcc-io/evcc/mock"
"github.com/evcc-io/evcc/util"
"github.com/golang/mock/gomock"
"github.com/stretchr/testify/assert"
@ -35,7 +34,7 @@ func TestPlan(t *testing.T) {
clock := clock.NewMock()
ctrl := gomock.NewController(t)
trf := mock.NewMockTariff(ctrl)
trf := api.NewMockTariff(ctrl)
trf.EXPECT().Rates().AnyTimes().Return(rates([]float64{20, 60, 10, 80, 40, 90}, clock.Now(), time.Hour), nil)
p := &Planner{
@ -146,7 +145,7 @@ func TestFlatTariffTargetInThePast(t *testing.T) {
clock := clock.NewMock()
ctrl := gomock.NewController(t)
trf := mock.NewMockTariff(ctrl)
trf := api.NewMockTariff(ctrl)
trf.EXPECT().Rates().AnyTimes().Return(rates([]float64{0}, clock.Now(), time.Hour), nil)
p := &Planner{
@ -168,7 +167,7 @@ func TestFlatTariffLongSlots(t *testing.T) {
clock := clock.NewMock()
ctrl := gomock.NewController(t)
trf := mock.NewMockTariff(ctrl)
trf := api.NewMockTariff(ctrl)
trf.EXPECT().Rates().AnyTimes().Return(rates([]float64{0}, clock.Now(), 24*time.Hour), nil)
p := &Planner{
@ -196,7 +195,7 @@ func TestTargetAfterKnownPrices(t *testing.T) {
clock := clock.NewMock()
ctrl := gomock.NewController(t)
trf := mock.NewMockTariff(ctrl)
trf := api.NewMockTariff(ctrl)
trf.EXPECT().Rates().AnyTimes().Return(rates([]float64{0}, clock.Now(), time.Hour), nil)
p := &Planner{
@ -218,7 +217,7 @@ func TestChargeAfterTargetTime(t *testing.T) {
clock := clock.NewMock()
ctrl := gomock.NewController(t)
trf := mock.NewMockTariff(ctrl)
trf := api.NewMockTariff(ctrl)
trf.EXPECT().Rates().AnyTimes().Return(rates([]float64{0, 0, 0, 0}, clock.Now(), time.Hour), nil)
p := &Planner{

View file

@ -6,7 +6,6 @@ import (
"time"
"github.com/evcc-io/evcc/api"
"github.com/evcc-io/evcc/mock"
"github.com/evcc-io/evcc/util"
"github.com/golang/mock/gomock"
"github.com/stretchr/testify/assert"
@ -14,8 +13,8 @@ import (
func TestRemainingChargeDuration(t *testing.T) {
ctrl := gomock.NewController(t)
charger := mock.NewMockCharger(ctrl)
vehicle := mock.NewMockVehicle(ctrl)
charger := api.NewMockCharger(ctrl)
vehicle := api.NewMockVehicle(ctrl)
// 9 kWh userBatCap => 10 kWh virtualBatCap
vehicle.EXPECT().Capacity().Return(float64(9))
@ -32,13 +31,13 @@ func TestRemainingChargeDuration(t *testing.T) {
func TestSocEstimation(t *testing.T) {
type chargerStruct struct {
*mock.MockCharger
*mock.MockBattery
*api.MockCharger
*api.MockBattery
}
ctrl := gomock.NewController(t)
vehicle := mock.NewMockVehicle(ctrl)
charger := &chargerStruct{mock.NewMockCharger(ctrl), mock.NewMockBattery(ctrl)}
vehicle := api.NewMockVehicle(ctrl)
charger := &chargerStruct{api.NewMockCharger(ctrl), api.NewMockBattery(ctrl)}
// 9 kWh user battery capacity is converted to initial value of 10 kWh virtual capacity
var capacity float64 = 9
@ -116,13 +115,13 @@ func TestSocEstimation(t *testing.T) {
func TestSocFromChargerAndVehicleWithErrors(t *testing.T) {
type chargerStruct struct {
*mock.MockCharger
*mock.MockBattery
*api.MockCharger
*api.MockBattery
}
ctrl := gomock.NewController(t)
vehicle := mock.NewMockVehicle(ctrl)
charger := &chargerStruct{mock.NewMockCharger(ctrl), mock.NewMockBattery(ctrl)}
vehicle := api.NewMockVehicle(ctrl)
charger := &chargerStruct{api.NewMockCharger(ctrl), api.NewMockBattery(ctrl)}
// 9 kWh user battery capacity is converted to initial value of 10 kWh virtual capacity
var capacity float64 = 9
@ -211,8 +210,8 @@ func TestSocFromChargerAndVehicleWithErrors(t *testing.T) {
func TestImprovedEstimatorRemainingChargeDuration(t *testing.T) {
ctrl := gomock.NewController(t)
charger := mock.NewMockCharger(ctrl)
vehicle := mock.NewMockVehicle(ctrl)
charger := api.NewMockCharger(ctrl)
vehicle := api.NewMockVehicle(ctrl)
// https://github.com/evcc-io/evcc/pull/7510#issuecomment-1512688548
tc := []struct {
@ -228,7 +227,7 @@ func TestImprovedEstimatorRemainingChargeDuration(t *testing.T) {
{17, 50, 100, 7 * 1e3, 1*time.Hour + 28*time.Minute + 23*time.Second},
{50, 10, 60, 11 * 1e3, 2*time.Hour + 31*time.Minute + 31*time.Second},
{50, 50, 100, 11 * 1e3, 2*time.Hour + 57*time.Minute + 17*time.Second},
{80, 10, 60, 22 * 1e3, 2*time.Hour + 01*time.Minute + 13*time.Second},
{80, 10, 60, 22 * 1e3, 2*time.Hour + 0o1*time.Minute + 13*time.Second},
{80, 50, 100, 22 * 1e3, 2*time.Hour + 48*time.Minute + 39*time.Second},
}

View file

@ -6,7 +6,6 @@ import (
"github.com/benbjohnson/clock"
"github.com/evcc-io/evcc/api"
"github.com/evcc-io/evcc/mock"
"github.com/evcc-io/evcc/util"
"github.com/golang/mock/gomock"
)
@ -61,8 +60,8 @@ func TestWrappedMeter(t *testing.T) {
ctrl := gomock.NewController(t)
defer ctrl.Finish()
mm := mock.NewMockMeter(ctrl)
me := mock.NewMockMeterEnergy(ctrl)
mm := api.NewMockMeter(ctrl)
me := api.NewMockMeterEnergy(ctrl)
type EnergyDecorator struct {
api.Meter

View file

@ -1,46 +0,0 @@
// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/evcc-io/evcc/core (interfaces: Updater)
// Package mock is a generated GoMock package.
package mock
import (
reflect "reflect"
gomock "github.com/golang/mock/gomock"
)
// MockUpdater is a mock of Updater interface.
type MockUpdater struct {
ctrl *gomock.Controller
recorder *MockUpdaterMockRecorder
}
// MockUpdaterMockRecorder is the mock recorder for MockUpdater.
type MockUpdaterMockRecorder struct {
mock *MockUpdater
}
// NewMockUpdater creates a new mock instance.
func NewMockUpdater(ctrl *gomock.Controller) *MockUpdater {
mock := &MockUpdater{ctrl: ctrl}
mock.recorder = &MockUpdaterMockRecorder{mock}
return mock
}
// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockUpdater) EXPECT() *MockUpdaterMockRecorder {
return m.recorder
}
// Update mocks base method.
func (m *MockUpdater) Update(arg0 float64, arg1, arg2 bool) {
m.ctrl.T.Helper()
m.ctrl.Call(m, "Update", arg0, arg1, arg2)
}
// Update indicates an expected call of Update.
func (mr *MockUpdaterMockRecorder) Update(arg0, arg1, arg2 interface{}) *gomock.Call {
mr.mock.ctrl.T.Helper()
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Update", reflect.TypeOf((*MockUpdater)(nil).Update), arg0, arg1, arg2)
}