mirror of
https://github.com/tinygo-org/drivers.git
synced 2026-08-27 09:59:01 +00:00
seesaw: added example and smoketest
This commit is contained in:
+15
-19
@@ -1,13 +1,13 @@
|
||||
package seesaw
|
||||
|
||||
import (
|
||||
"reflect"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/frankban/quicktest"
|
||||
)
|
||||
|
||||
func TestDevice_SoftReset_success(t *testing.T) {
|
||||
|
||||
mocked := newMockDev(t, 0x49,
|
||||
when([]byte{0x00, 0x7F, 0xFF}, nil, nil),
|
||||
when([]byte{0x00, 0x01}, nil, nil),
|
||||
@@ -17,11 +17,11 @@ func TestDevice_SoftReset_success(t *testing.T) {
|
||||
sut := New(mocked)
|
||||
|
||||
err := sut.SoftReset()
|
||||
assertEquals(t, err, nil)
|
||||
qt := quicktest.New(t)
|
||||
qt.Assert(err, quicktest.IsNil)
|
||||
}
|
||||
|
||||
func TestDevice_WriteRegister(t *testing.T) {
|
||||
|
||||
write := byte(0x1F)
|
||||
mocked := newMockDev(t, 0x49,
|
||||
when([]byte{0x01, 0x04, write}, nil, nil),
|
||||
@@ -30,11 +30,11 @@ func TestDevice_WriteRegister(t *testing.T) {
|
||||
sut := New(mocked)
|
||||
|
||||
err := sut.WriteRegister(ModuleGpioBase, FunctionGpioBulk, write)
|
||||
assertEquals(t, err, nil)
|
||||
qt := quicktest.New(t)
|
||||
qt.Assert(err, quicktest.IsNil)
|
||||
}
|
||||
|
||||
func TestDevice_ReadRegister(t *testing.T) {
|
||||
|
||||
read := byte(0x23)
|
||||
mocked := newMockDev(t, 0x49,
|
||||
when([]byte{0x0F, 0x10}, nil, nil),
|
||||
@@ -44,12 +44,12 @@ func TestDevice_ReadRegister(t *testing.T) {
|
||||
sut := New(mocked)
|
||||
|
||||
r, err := sut.ReadRegister(ModuleTouchBase, FunctionTouchChannelOffset)
|
||||
assertEquals(t, err, nil)
|
||||
assertEquals(t, r, read)
|
||||
qt := quicktest.New(t)
|
||||
qt.Assert(err, quicktest.IsNil)
|
||||
qt.Assert(r, quicktest.Equals, r)
|
||||
}
|
||||
|
||||
func TestDevice_Read(t *testing.T) {
|
||||
|
||||
expectedRead := []byte{0x01, 0x02, 0x03, 0x04, 0x05}
|
||||
mocked := newMockDev(t, 0x49,
|
||||
when([]byte{0x0F, 0x10}, nil, nil),
|
||||
@@ -60,12 +60,13 @@ func TestDevice_Read(t *testing.T) {
|
||||
|
||||
var buf [5]byte
|
||||
err := sut.Read(ModuleTouchBase, FunctionTouchChannelOffset, buf[:], time.Nanosecond)
|
||||
assertEquals(t, err, nil)
|
||||
assertEquals(t, buf[:], expectedRead)
|
||||
|
||||
qt := quicktest.New(t)
|
||||
qt.Assert(err, quicktest.IsNil)
|
||||
qt.Assert(buf[:], quicktest.DeepEquals, expectedRead)
|
||||
}
|
||||
|
||||
func TestDevice_Write(t *testing.T) {
|
||||
|
||||
expectedWrite := []byte{0x01, 0x02, 0x03, 0x04, 0x05}
|
||||
mocked := newMockDev(t, 0x49,
|
||||
when(append([]byte{0x0E, 0x04}, expectedWrite...), nil, nil),
|
||||
@@ -74,11 +75,6 @@ func TestDevice_Write(t *testing.T) {
|
||||
sut := New(mocked)
|
||||
|
||||
err := sut.Write(ModuleNeoPixelBase, FunctionNeopixelBuf, expectedWrite)
|
||||
assertEquals(t, err, nil)
|
||||
}
|
||||
|
||||
func assertEquals[e any](t *testing.T, actual, expected e) {
|
||||
if !reflect.DeepEqual(actual, expected) {
|
||||
t.Fatalf("actual %+v != %+v not equals expected", actual, expected)
|
||||
}
|
||||
qt := quicktest.New(t)
|
||||
qt.Assert(err, quicktest.IsNil)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user