Пример #1
0
    def test_configure_mqtt(self, mock_cert_utils, mock_paho):
        """
        Should configure the MQTT connection.
        """
        client = MQTTClient("123", "987", False, True)

        # configure_mqtt() function is called at the constructor, so
        # we need to reset the mocks to be able to test it
        mock_cert_utils.reset_mock()
        mock_paho.reset_mock()

        client.configure_mqtt()

        mock_cert_utils.get_certificate_file.assert_called_once_with(
            client.device_id)
        mock_cert_utils.get_private_key_file.assert_called_once_with(
            client.device_id)

        self.assertIsNotNone(client.mqttc)
        mock_paho.Client.assert_called_once_with(client_id=client.device_id)

        client.mqttc.reconnect_delay_set.assert_called_once_with(
            min_delay=MOCK_CONFIG["security"]["min_time_reconn"],
            max_delay=MOCK_CONFIG["security"]["max_time_reconn"])

        client.mqttc.tls_set.assert_called_once()
        client.mqttc.tls_insecure_set.assert_called_once_with(True)

        self.assertIsNotNone(client.mqttc.on_connect)
        self.assertIsNotNone(client.mqttc.on_disconnect)
        self.assertIsNotNone(client.mqttc.on_publish)
        self.assertIsNotNone(client.mqttc.on_subscribe)
        self.assertIsNotNone(client.mqttc.on_message)
Пример #2
0
    def test_configure_mqtt(self, mock_utils,
                            mock_logging,
                            mock_cert_client,
                            paho_mqtt_mock,
                            json_mock):
        """
        Should configure the MQTT connection.
        """
        client = MQTTClient("123", "987", False, True)
        client.configure_mqtt()

        mock_cert_client.get_certificate_file.assert_called_once_with(
            client.device_id)
        mock_cert_client.get_private_key_file.assert_called_once_with(
            client.device_id)

        self.assertIsNotNone(client.mqttc)
        paho_mqtt_mock.Client.assert_called_once_with(
            client_id=client.device_id)
        paho_mqtt_mock.Client().reconnect_delay_set.assert_called_once_with(
            min_delay=MOCK_CONFIG["security"]["min_time_reconn"],
            max_delay=MOCK_CONFIG["security"]["max_time_reconn"])

        paho_mqtt_mock.Client().tls_set.assert_called_once()
        paho_mqtt_mock.Client().tls_insecure_set.assert_called_once_with(True)

        self.assertIsNotNone(client.mqttc.on_connect)
        self.assertIsNotNone(client.mqttc.on_disconnect)
        self.assertIsNotNone(client.mqttc.on_publish)
        self.assertIsNotNone(client.mqttc.on_subscribe)
        self.assertIsNotNone(client.mqttc.on_message)

        mock_utils.reset_mock()
        mock_logging.reset_mock()
        mock_cert_client.reset_mock()
        paho_mqtt_mock.reset_mock()
        json_mock.reset_mock()
Пример #3
0
    def test_setup_success(self, mock_utils,
                           mock_logging,
                           mock_cert_client,
                           paho_mqtt_mock,
                           json_mock):
        """
        Should setup the parameters successfully.
        """

        client = MQTTClient("123", "987", False, False)
        client.configure_mqtt = MagicMock()
        client.setup()
        mock_logging.basicConfig.assert_called_once()
        client.configure_mqtt.assert_called_once()

        mock_utils.reset_mock()
        mock_logging.reset_mock()
        mock_cert_client.reset_mock()
        paho_mqtt_mock.reset_mock()
        json_mock.reset_mock()
Пример #4
0
    def test_setup_success_renew(self, mock_utils,
                                 mock_logging,
                                 mock_cert_client,
                                 paho_mqtt_mock,
                                 json_mock):
        """
        Should setup the parameters successfully with certificate renovation.
        """
        client = MQTTClient("123", "987", False, True)
        client.configure_mqtt = MagicMock()
        client.setup()

        mock_cert_client.new_cert.assert_called_once_with(
            client.tenant, client.device_id)
        mock_cert_client.create_cert_files.assert_called_once_with(
            client.new_cert, client.device_cert_dir)

        mock_utils.reset_mock()
        mock_logging.reset_mock()
        mock_cert_client.reset_mock()
        paho_mqtt_mock.reset_mock()
        json_mock.reset_mock()