示例#1
0
        public void WriteMultipleRegisters()
        {
            ushort startAddress = 35;

            ushort[] valuesToWrite = new ushort[] { 1, 2, 3, 4, 5 };
            Assert.AreNotEqual(valuesToWrite, _testDataStore.HoldingRegisters.Slice(startAddress - 1, valuesToWrite.Length).ToArray());
            WriteMultipleRegistersResponse expectedResponse = new WriteMultipleRegistersResponse(1, startAddress, (ushort)valuesToWrite.Length);
            WriteMultipleRegistersResponse response         = ModbusSlave.WriteMultipleRegisters(new WriteMultipleRegistersRequest(1, startAddress, new RegisterCollection(valuesToWrite)), _testDataStore, _testDataStore.HoldingRegisters);

            AssertModbusMessagePropertiesAreEqual(expectedResponse, response);
        }