Beispiel #1
0
    public void GetMbapHeader()
    {
        WriteMultipleRegistersRequest?message = new(3, 1, MessageUtility.CreateDefaultCollection <RegisterCollection, ushort>(0, 120));

        message.TransactionId = 45;
        Assert.Equal(new byte[] { 0, 45, 0, 0, 0, 247, 3 }, ModbusIpTransport.GetMbapHeader(message));
    }
    public void CreateWriteMultipleRegistersRequestMaxSize()
    {
        WriteMultipleRegistersRequest request = new(1, 2,
                                                    MessageUtility.CreateDefaultCollection <RegisterCollection, ushort>(3, Modbus.MaximumRegisterRequestResponseSize));

        Assert.Equal(Modbus.MaximumRegisterRequestResponseSize, request.NumberOfPoints);
    }
Beispiel #3
0
    public void CreateDefaultCollection()
    {
        RegisterCollection col = MessageUtility.CreateDefaultCollection <RegisterCollection, ushort>(3, 5);

        Assert.Equal(5, col.Count);
        Assert.Equal(new ushort[] { 3, 3, 3, 3, 3 }, col.ToArray());
    }
Beispiel #4
0
    public void CreateWriteMultipleCoilsRequestMaxSize()
    {
        WriteMultipleCoilsRequest request = new(1, 2,
                                                MessageUtility.CreateDefaultCollection <DiscreteCollection, bool>(true, Modbus.MaximumDiscreteRequestResponseSize));

        Assert.Equal(Modbus.MaximumDiscreteRequestResponseSize, request.Data.Count);
    }
Beispiel #5
0
 public void CreateDefaultCollectionNegativeSize() =>
 Assert.Throws <ArgumentOutOfRangeException>(() => MessageUtility.CreateDefaultCollection <RegisterCollection, ushort>(0, -1));
 public void CreateWriteMultipleRegistersRequestTooMuchData() =>
 Assert.Throws <ArgumentOutOfRangeException>(() =>
                                             new WriteMultipleRegistersRequest(1, 2,
                                                                               MessageUtility.CreateDefaultCollection <RegisterCollection, ushort>(3, Modbus.MaximumRegisterRequestResponseSize + 1)));
 public void CreateDefaultCollectionNegativeSize()
 {
     MessageUtility.CreateDefaultCollection <RegisterCollection, ushort>(0, -1);
 }
Beispiel #8
0
 public void CreateWriteMultipleCoilsRequestTooMuchData() =>
 Assert.Throws <ArgumentOutOfRangeException>(() =>
                                             new WriteMultipleCoilsRequest(1, 2, MessageUtility.CreateDefaultCollection <DiscreteCollection, bool>(true, Modbus.MaximumDiscreteRequestResponseSize + 1)));