Example #1
0
    def test_encode(self):
        """Test encode of message."""
        msg = Message()
        cmd = msg.encode()
        self.assertEqual(cmd, '0;0;0;0;0;\n')

        msg.node_id = 1
        msg.child_id = 255
        msg.type = MessageType.internal
        msg.sub_type = Internal.I_BATTERY_LEVEL
        msg.ack = 0
        msg.payload = 57

        cmd = msg.encode()
        self.assertEqual(cmd, '1;255;3;0;0;57\n')
Example #2
0
 def test_callback_exception(self):
     """Test gateway callback with exception."""
     side_effect = ValueError('test')
     self.gateway = Gateway(event_callback=self._callback)
     with mock.patch.object(self.gateway, 'event_callback',
                            side_effect=side_effect) as mock_callback:
         with self.assertLogs(level='ERROR') as test_handle:
             msg = Message()
             msg.node_id = 1
             self.gateway.alert(msg)
         assert mock_callback.called
         self.assertEqual(
             # only check first line of error log
             test_handle.output[0].split('\n', 1)[0],
             'ERROR:mysensors:test')