Ejemplo n.º 1
0
        public void nodeID_set_nodeIDSet(byte node)
        {
            var slaveConnector = new Moq.Mock <ITCPSlaveConnector>();

            slave = new TCPSlave(slaveConnector.Object);
            slaveConnector.Object.nodeID = node;

            slaveConnector.VerifySet(s => s.nodeID = node);
        }
Ejemplo n.º 2
0
        public void Connect_SlaveDoesntExist_RequestConnect(string IPAddress, int port)
        {
            var slaveConnector = new Moq.Mock <ITCPSlaveConnector>();

            slave = new TCPSlave(slaveConnector.Object);
            ModbusTCPConnectionParameters parameters = new ModbusTCPConnectionParameters();

            parameters.ipaddress = IPAddress;
            parameters.port      = port;
            slave.connect(parameters);

            //verify the connect is called with correct parameters
            slaveConnector.Verify(s => s.connect(parameters.ipaddress, parameters.port));
        }
Ejemplo n.º 3
0
        public void sendReadMessage_Coils_readCoil()
        {
            var slaveConnector = new Moq.Mock <ITCPSlaveConnector>();

            slave = new TCPSlave(slaveConnector.Object);
            ModbusTCPReadMessage <bool> message = new ModbusTCPReadMessage <bool>()
            {
                functionCode = ModbusTCPReadMessage <bool> .FunctionCode.ReadCoils,
                startReg     = 30,
                length       = 40,
            };

            slave.sendReadMessage <bool>(message);

            //verify the correct send Message is called
            slaveConnector.Verify(s => s.ReadCoils(message.startReg, (message.length)), Moq.Times.Once);
        }
Ejemplo n.º 4
0
        public void sendReadMessage_InputRegisters_readInputRegisters()
        {
            var slaveConnector = new Moq.Mock <ITCPSlaveConnector>();

            slave = new TCPSlave(slaveConnector.Object);
            ModbusTCPReadMessage <int> message = new ModbusTCPReadMessage <int>()
            {
                functionCode = ModbusTCPReadMessage <int> .FunctionCode.ReadInputRegisters,
                startReg     = 30,
                length       = 40,
            };

            slave.sendReadMessage <int>(message);

            //verify the correct send Message is called
            slaveConnector.Verify(s => s.ReadInputRegisters(message.startReg, (message.length)));
        }
Ejemplo n.º 5
0
        public void sendWriteMessage_multipleTypeInt_sendMultipleRegister()
        {
            var slaveConnector = new Moq.Mock <ITCPSlaveConnector>();

            slave = new TCPSlave(slaveConnector.Object);
            ModbusTCPWriteMessage <int> message = new ModbusTCPWriteMessage <int>()
            {
                functionCode = ModbusTCPWriteMessage <int> .FunctionCode.WriteMultiple,
                startReg     = 30,
                registers    = new List <int> {
                    123, 124, 125
                }
            };

            slave.sendWriteMessage <int>(message);

            //verify the correct send Message is called
            int[] regs = message.registers.ToArray();
            slaveConnector.Verify(s => s.WriteMultipleRegisters(message.startReg, regs));
        }