Exemple #1
0
    def test_mqtt_get_payload(self):
        """
        Test MQTT backend get_payload function
        """
        from_user = _create_user('Bob')
        to_user = _create_user('Alice')
        instance = _create_message(from_user, to_user, 'I love oov')

        payload = {
            'id': instance.id,
            'time': instance.timestamp.isoformat(),
            'payload': {
                'author': {
                    'username': from_user.username,
                    'real_name': from_user.get_full_name()
                },
                'context': {
                    'type': to_user._meta.model_name,
                    'metadata': {
                        'id': to_user.pk,
                        'name': to_user.get_full_name()
                    }
                },
                'message': "I love oov"
            }
        }
        self.assertEqual(json.dumps(payload), get_payload(instance))
Exemple #2
0
    def test_mqtt_get_payload(self):
        """
        Test MQTT backend get_payload function
        """
        from_user = _create_user('Bob')
        to_user = _create_user('Alice')
        instance = _create_message(from_user, to_user, 'I love oov')

        payload = {
            'id': instance.id,
            'time': instance.timestamp.isoformat(),
            'payload': {
                'author': {
                    'username': from_user.username,
                    'real_name': from_user.get_full_name()
                },
                'context': {
                    'type': to_user._meta.model_name,
                    'metadata': {
                        'id': to_user.pk,
                        'name': to_user.get_full_name()
                    }
                },
                'message': "I love oov"
            }
        }
        self.assertEqual(json.dumps(payload), get_payload(instance))
Exemple #3
0
 def test_mqtt_send(self, mocked):
     """
     Test MQTT Backend send method
     """
     from_user = _create_user('Bob')
     to_user = _create_user('Alice')
     instance = _create_message(from_user, to_user, 'I love oov')
     mqtt = MQTTBackend(
         options={
             'HOST': 'localhost',
             'PORT': 8883,
             'SECURE': True,
             'CA_CERT_FILE': 'cacert.pem',
             'CERT_FILE': 'emq.pem',
             'KEY_FILE': 'emq.key'
         })
     mqtt.send(instance=instance)
     self.assertTrue(mocked.called)
     args, kwargs = mocked.call_args_list[0]
     self.assertEquals(mqtt.get_topic(instance), args[0])
     self.assertEquals(get_payload(instance), kwargs['payload'])
     self.assertEquals('localhost', kwargs['hostname'])
     self.assertEquals(8883, kwargs['port'])
     self.assertEquals(0, kwargs['qos'])
     self.assertEquals(False, kwargs['retain'])
     self.assertDictEqual(
         dict(ca_certs='cacert.pem',
              certfile='emq.pem',
              keyfile='emq.key',
              tls_version=ssl.PROTOCOL_TLSv1_2,
              cert_reqs=ssl.CERT_NONE), kwargs['tls'])
Exemple #4
0
 def test_mqtt_send(self, mocked):
     """
     Test MQTT Backend send method
     """
     from_user = _create_user('Bob')
     to_user = _create_user('Alice')
     instance = _create_message(from_user, to_user, 'I love oov')
     mqtt = MQTTBackend(options={
         'HOST': 'localhost',
         'PORT': 8883,
         'SECURE': True,
         'CA_CERT_FILE': 'cacert.pem',
         'CERT_FILE': 'emq.pem',
         'KEY_FILE': 'emq.key'
     })
     mqtt.send(instance=instance)
     self.assertTrue(mocked.called)
     args, kwargs = mocked.call_args_list[0]
     self.assertEquals(mqtt.get_topic(instance), args[0])
     self.assertEquals(get_payload(instance), kwargs['payload'])
     self.assertEquals('localhost', kwargs['hostname'])
     self.assertEquals(8883, kwargs['port'])
     self.assertEquals(0, kwargs['qos'])
     self.assertEquals(False, kwargs['retain'])
     self.assertDictEqual(
         dict(ca_certs='cacert.pem',
              certfile='emq.pem',
              keyfile='emq.key',
              tls_version=ssl.PROTOCOL_TLSv1_2,
              cert_reqs=ssl.CERT_NONE),
         kwargs['tls'])
Exemple #5
0
    def test_call_backend(self):
        """
        Test messaging call_backend task.
        """
        from_user = _create_user('Bob')
        to_user = _create_user('Alice')
        instance = _create_message(from_user, to_user, 'I love oov')

        with self.assertRaises(NotImplementedError):
            call_backend('onadata.apps.messaging.backends.base.BaseBackend',
                         instance.id, {'HOST': 'localhost'})
Exemple #6
0
    def test_call_backend(self):
        """
        Test messaging call_backend task.
        """
        from_user = _create_user('Bob')
        to_user = _create_user('Alice')
        instance = _create_message(from_user, to_user, 'I love oov')

        with self.assertRaises(NotImplementedError):
            call_backend('onadata.apps.messaging.backends.base.BaseBackend',
                         instance.id, {'HOST': 'localhost'})
Exemple #7
0
    def test_call_backend_async(self):
        """
        Test messaging call_backend_async task.
        """
        from_user = _create_user('Bob')
        to_user = _create_user('Alice')
        instance = _create_message(from_user, to_user, 'I love oov')

        with self.assertRaises(NotImplementedError):
            call_backend_async.delay(
                backend='onadata.apps.messaging.backends.base.BaseBackend',
                instance_id=instance.id,
                backend_options=None).get()
Exemple #8
0
 def test_mqtt_get_topic(self):
     """
     Test MQTT backend get_topic method
     """
     from_user = _create_user('Bob')
     to_user = _create_user('Alice')
     instance = _create_message(from_user, to_user, 'I love oov')
     mqtt = MQTTBackend(options={'HOST': 'localhost'})
     expected = (
         "/{topic_root}/{target_name}/{target_id}/messages/publish".format(
             topic_root='onadata', target_name='user',
             target_id=to_user.id))
     self.assertEqual(expected, mqtt.get_topic(instance))
Exemple #9
0
 def test_mqtt_get_topic(self):
     """
     Test MQTT backend get_topic method
     """
     from_user = _create_user('Bob')
     to_user = _create_user('Alice')
     instance = _create_message(from_user, to_user, 'I love oov')
     mqtt = MQTTBackend(options={'HOST': 'localhost'})
     expected = (
         "/{topic_root}/{target_name}/{target_id}/messages/publish".format(
             topic_root='onadata', target_name='user',
             target_id=to_user.id))
     self.assertEqual(expected, mqtt.get_topic(instance))
Exemple #10
0
    def test_call_backend_async(self):
        """
        Test messaging call_backend_async task.
        """
        from_user = _create_user('Bob')
        to_user = _create_user('Alice')
        instance = _create_message(from_user, to_user, 'I love oov')

        with self.assertRaises(NotImplementedError):
            call_backend_async.delay(
                backend='onadata.apps.messaging.backends.base.BaseBackend',
                instance_id=instance.id,
                backend_options=None).get()