Check that optional interfaces are implemented (#159)
This commit is contained in:
parent
fe334e8327
commit
5dc903f4ce
4 changed files with 77 additions and 0 deletions
20
charger/go-e-test.go
Normal file
20
charger/go-e-test.go
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
package charger
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/andig/evcc/api"
|
||||
)
|
||||
|
||||
// TestGoE tests interfaces
|
||||
func TestGoE(t *testing.T) {
|
||||
var wb api.Charger = NewGoE("foo")
|
||||
|
||||
if _, ok := wb.(api.MeterCurrent); !ok {
|
||||
t.Error("missing MeterCurrents interface")
|
||||
}
|
||||
|
||||
if _, ok := wb.(api.ChargeRater); !ok {
|
||||
t.Error("missing ChargeRater interface")
|
||||
}
|
||||
}
|
||||
23
charger/keba_test.go
Normal file
23
charger/keba_test.go
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
package charger
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/andig/evcc/api"
|
||||
)
|
||||
|
||||
func TestKeba(t *testing.T) {
|
||||
var wb api.Charger = NewKeba("foo", RFID{}, 0)
|
||||
|
||||
if _, ok := wb.(api.MeterEnergy); !ok {
|
||||
t.Error("missing MeterEnergy interface")
|
||||
}
|
||||
|
||||
if _, ok := wb.(api.MeterCurrent); !ok {
|
||||
t.Error("missing MeterCurrents interface")
|
||||
}
|
||||
|
||||
if _, ok := wb.(api.ChargeRater); !ok {
|
||||
t.Error("missing ChargeRater interface")
|
||||
}
|
||||
}
|
||||
15
charger/nrgble_linux_test.go
Normal file
15
charger/nrgble_linux_test.go
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
package charger
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/andig/evcc/api"
|
||||
)
|
||||
|
||||
func TestNRGKickBLE(t *testing.T) {
|
||||
var wb api.Charger = &NRGKickBLE{}
|
||||
|
||||
if _, ok := wb.(api.MeterCurrent); !ok {
|
||||
t.Error("missing MeterCurrents interface")
|
||||
}
|
||||
}
|
||||
19
charger/nrgconnect_test.go
Normal file
19
charger/nrgconnect_test.go
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
package charger
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/andig/evcc/api"
|
||||
)
|
||||
|
||||
func TestNRGKickConnect(t *testing.T) {
|
||||
var wb api.Charger = NewNRGKickConnect("foo", "bar", "baz")
|
||||
|
||||
if _, ok := wb.(api.MeterEnergy); !ok {
|
||||
t.Error("missing MeterEnergy interface")
|
||||
}
|
||||
|
||||
if _, ok := wb.(api.MeterCurrent); !ok {
|
||||
t.Error("missing MeterCurrents interface")
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue