1
0
mirror of https://github.com/hybridgroup/gobot.git synced 2025-05-02 22:17:12 +08:00
hybridgroup.gobot/drivers/i2c/mpu6050_driver_test.go
deadprogram 80cc3139d0 core: Refactor I2C drivers for new Driver creation signatures
Signed-off-by: deadprogram <ron@hybridgroup.com>
2016-09-25 14:08:18 +02:00

53 lines
1.2 KiB
Go

package i2c
import (
"testing"
"time"
"github.com/hybridgroup/gobot/gobottest"
)
// --------- HELPERS
func initTestMPU6050Driver() (driver *MPU6050Driver) {
driver, _ = initTestMPU6050DriverWithStubbedAdaptor()
return
}
func initTestMPU6050DriverWithStubbedAdaptor() (*MPU6050Driver, *i2cTestAdaptor) {
adaptor := newI2cTestAdaptor()
return NewMPU6050Driver(adaptor), adaptor
}
// --------- TESTS
func TestNewMPU6050Driver(t *testing.T) {
// Does it return a pointer to an instance of MPU6050Driver?
var bm interface{} = NewMPU6050Driver(newI2cTestAdaptor())
_, ok := bm.(*MPU6050Driver)
if !ok {
t.Errorf("NewMPU6050Driver() should have returned a *MPU6050Driver")
}
}
func TestMPU6050Driver(t *testing.T) {
mpu := initTestMPU6050Driver()
gobottest.Refute(t, mpu.Connection(), nil)
gobottest.Assert(t, mpu.interval, 10*time.Millisecond)
mpu = NewMPU6050Driver(newI2cTestAdaptor(), 100*time.Millisecond)
gobottest.Assert(t, mpu.interval, 100*time.Millisecond)
}
// Methods
func TestMPU6050DriverStart(t *testing.T) {
mpu := initTestMPU6050Driver()
gobottest.Assert(t, len(mpu.Start()), 0)
}
func TestMPU6050DriverHalt(t *testing.T) {
mpu := initTestMPU6050Driver()
gobottest.Assert(t, len(mpu.Halt()), 0)
}