From dc011e36439102888b60f05292d8f5b250f98313 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20S=C3=B6lver?= Date: Sun, 29 Oct 2023 20:26:43 +0100 Subject: [PATCH] Add tests --- client_test.go | 38 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/client_test.go b/client_test.go index cde0e75..e0849ae 100644 --- a/client_test.go +++ b/client_test.go @@ -31,11 +31,11 @@ func TestNibeInputRegsters(t *testing.T) { } func TestNibeHoldingRegsters(t *testing.T) { - inputRegs := []uint16{18, 20, 22, 26, 30, 34, 38, 39, 40, 41, 45, 43, 44, 45, 56 /*97, 159,*/, 196, 197, 237} + holdingRegs := []uint16{18, 20, 22, 26, 30, 34, 38, 39, 40, 41, 45, 43, 44, 45, 56 /*97, 159,*/, 196, 197, 237} c, err := New(testNibeHost, 1, 100*time.Millisecond, 5*time.Second, 0) t.Log("Connect") assert.NoError(t, err) - for _, reg := range inputRegs { + for _, reg := range holdingRegs { res, err := c.ReadHoldingRegisters(uint16(reg), 1) assert.NoError(t, err, "Failed to read reg %v", reg) @@ -49,6 +49,40 @@ func TestNibeHoldingRegsters(t *testing.T) { time.Sleep(1 * time.Second) } +func TestNibeReads32Register(t *testing.T) { + holdingRegs := []uint16{1083} + c, err := New(testNibeHost, 1, 100*time.Millisecond, 5*time.Second, 0) + t.Log("Connect") + assert.NoError(t, err) + for _, reg := range holdingRegs { + + res, err := c.ReadInputRegisters(uint16(reg), 2) + assert.NoError(t, err, "Failed to read reg %v", reg) + + if err == nil { + t.Logf("reg: %v res: %v \n", reg, res) + } + time.Sleep(10 * time.Millisecond) + } +} + +func TestNibeReadu32ScaledRegister(t *testing.T) { + holdingRegs := []uint16{1583} + c, err := New(testNibeHost, 1, 100*time.Millisecond, 5*time.Second, 0) + t.Log("Connect") + assert.NoError(t, err) + for _, reg := range holdingRegs { + + res, err := c.ReadInputRegisters(uint16(reg), 2) + assert.NoError(t, err, "Failed to read reg %v", reg) + + if err == nil { + t.Logf("reg: %v res: %v \n", reg, res) + } + time.Sleep(10 * time.Millisecond) + } +} + func TestReadOneRegisterKeepAlive(t *testing.T) { c, err := New(testIAMhost, 1, 100*time.Millisecond, 5*time.Second, 1) t.Log("Connect")