From 0309f19ff909ab757bca2d70c35e059ddc6ee7e5 Mon Sep 17 00:00:00 2001 From: andig Date: Thu, 28 May 2020 11:37:59 +0200 Subject: [PATCH] Add tests --- util/modbus/modbus_test.go | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 util/modbus/modbus_test.go diff --git a/util/modbus/modbus_test.go b/util/modbus/modbus_test.go new file mode 100644 index 000000000..c462f4958 --- /dev/null +++ b/util/modbus/modbus_test.go @@ -0,0 +1,30 @@ +package modbus + +import "testing" + +func TestParsePoint(t *testing.T) { + tc := []struct { + in string + model, block int + point string + err bool + }{ + {"103:W", 103, 0, "W", false}, + {"802:1:V", 802, 1, "V", false}, + {"802::V", 802, 1, "V", true}, + } + + for _, tc := range tc { + t.Log(tc) + + model, block, point, err := ParsePoint(tc.in) + + if (err != nil) != tc.err { + t.Errorf("unexpected error: %d:%d:%s %v", model, block, point, err) + } + + if !tc.err && (model != tc.model || block != tc.block || point != tc.point) { + t.Errorf("unexpected result: %d:%d:%s", model, block, point) + } + } +}