def testReadWriteMultipleRegistersValidate(self):
        context = MockContext()
        context.validate = lambda f,a,c: a == 1
        request = ReadWriteMultipleRegistersRequest(read_address=1,
            read_count=10, write_address=2, write_registers=[0x00])
        response = request.execute(context)
        self.assertEqual(response.exception_code, ModbusExceptions.IllegalAddress)

        context.validate = lambda f,a,c: a == 2
        response = request.execute(context)
        self.assertEqual(response.exception_code, ModbusExceptions.IllegalAddress)

        request.write_byte_count = 0x100
        response = request.execute(context)
        self.assertEqual(response.exception_code, ModbusExceptions.IllegalValue)
Example #2
0
    def testReadWriteMultipleRegistersValidate(self):
        context = MockContext()
        context.validate = lambda f,a,c: a == 1
        request = ReadWriteMultipleRegistersRequest(read_address=1,
            read_count=10, write_address=2, write_registers=[0x00])
        response = request.execute(context)
        self.assertEqual(response.exception_code, ModbusExceptions.IllegalAddress)

        context.validate = lambda f,a,c: a == 2
        response = request.execute(context)
        self.assertEqual(response.exception_code, ModbusExceptions.IllegalAddress)

        request.write_byte_count = 0x100
        response = request.execute(context)
        self.assertEqual(response.exception_code, ModbusExceptions.IllegalValue)
 def test_bit_read_message_execute_success(self):
     """ Test bit read request encoding """
     context = MockContext()
     context.validate = lambda a, b, c: True
     requests = [
         ReadCoilsRequest(1, 5),
         ReadDiscreteInputsRequest(1, 5),
     ]
     for request in requests:
         result = request.execute(context)
         self.assertEqual(result.bits, [True] * 5)
 def testBitReadMessageExecuteSuccess(self):
     ''' Test bit read request encoding '''
     context = MockContext()
     context.validate = lambda a,b,c: True
     requests = [
         ReadCoilsRequest(1,5),
         ReadDiscreteInputsRequest(1,5),
     ]
     for request in requests:
         result = request.execute(context)
         self.assertEqual(result.bits, [True] * 5)
 def testBitReadMessageExecuteSuccess(self):
     ''' Test bit read request encoding '''
     context = MockContext()
     context.validate = lambda a, b, c: True
     requests = [
         ReadCoilsRequest(1, 5),
         ReadDiscreteInputsRequest(1, 5),
     ]
     for request in requests:
         result = request.execute(context)
         self.assertEqual(result.bits, [True] * 5)