gobot.io/x/gobot@v1.16.0/drivers/i2c/grove_drivers_test.go (about) 1 package i2c 2 3 import ( 4 "strings" 5 "testing" 6 7 "gobot.io/x/gobot" 8 "gobot.io/x/gobot/gobottest" 9 ) 10 11 var _ gobot.Driver = (*GroveLcdDriver)(nil) 12 var _ gobot.Driver = (*GroveAccelerometerDriver)(nil) 13 14 func initTestGroveLcdDriver() (driver *GroveLcdDriver) { 15 driver, _ = initGroveLcdDriverWithStubbedAdaptor() 16 return 17 } 18 19 func initGroveLcdDriverWithStubbedAdaptor() (*GroveLcdDriver, *i2cTestAdaptor) { 20 adaptor := newI2cTestAdaptor() 21 return NewGroveLcdDriver(adaptor), adaptor 22 } 23 24 func initTestGroveAccelerometerDriver() (driver *GroveAccelerometerDriver) { 25 driver, _ = initGroveAccelerometerDriverWithStubbedAdaptor() 26 return 27 } 28 29 func initGroveAccelerometerDriverWithStubbedAdaptor() (*GroveAccelerometerDriver, *i2cTestAdaptor) { 30 adaptor := newI2cTestAdaptor() 31 return NewGroveAccelerometerDriver(adaptor), adaptor 32 } 33 34 func TestGroveLcdDriverName(t *testing.T) { 35 g := initTestGroveLcdDriver() 36 gobottest.Refute(t, g.Connection(), nil) 37 gobottest.Assert(t, strings.HasPrefix(g.Name(), "JHD1313M1"), true) 38 } 39 40 func TestLcdDriverWithAddress(t *testing.T) { 41 adaptor := newI2cTestAdaptor() 42 g := NewGroveLcdDriver(adaptor, WithAddress(0x66)) 43 gobottest.Assert(t, g.GetAddressOrDefault(0x33), 0x66) 44 } 45 46 func TestGroveAccelerometerDriverName(t *testing.T) { 47 g := initTestGroveAccelerometerDriver() 48 gobottest.Refute(t, g.Connection(), nil) 49 gobottest.Assert(t, strings.HasPrefix(g.Name(), "MMA7660"), true) 50 } 51 52 func TestGroveAccelerometerDriverWithAddress(t *testing.T) { 53 adaptor := newI2cTestAdaptor() 54 g := NewGroveAccelerometerDriver(adaptor, WithAddress(0x66)) 55 gobottest.Assert(t, g.GetAddressOrDefault(0x33), 0x66) 56 }