Esempio n. 1
0
def test_init_protocol_gateway(test_case):
    # create a configuration with 2 adapters: 1 platform and 1 not, the PG (use_platform_protocol_only=True) should filter only 1 of them
    mqtt_def_config_1 = MqttProtocolAdapter.create_default_configuration(is_platform_protocol=False)
    mqtt_def_config_2 = MqttProtocolAdapter.create_default_configuration(is_platform_protocol=True)
    protocol_gateway_config = ProtocolGateway.create_default_configuration([mqtt_def_config_1, mqtt_def_config_2])
    protocol_gateway = ProtocolGateway(protocol_gateway_config, 'TestProtocolGateway', use_platform_protocol_only=True)

    test_case.assertEqual(1, len(protocol_gateway.adapters))
Esempio n. 2
0
def test_create_def_configuration(test_case):
    is_platform_protocol = True
    broker_url = 'mqtt://some-host:1886'
    default_config = MqttProtocolAdapter.create_default_configuration(
        is_platform_protocol=is_platform_protocol, broker_url=broker_url)
    test_case.assertEqual(is_platform_protocol, default_config['platform'])
    test_case.assertEqual(broker_url, default_config['config']['brokerUrl'])
    mqtt_adapter = MqttProtocolAdapter(default_config['config'])
    test_case.assertEqual(broker_url, mqtt_adapter.getId())
Esempio n. 3
0
def mqtt_adapter(name, topic_namespace):
    if topic_namespace is None:
        mqtt_config = {
            "platform": False,
            "module": {
                "name": ".util.mqtt_client",
                "class": "MqttProtocolAdapter"
            },
            "config": {
                "brokerUrl": "mqtt://localhost:1883"
            }
        }
    else:
        mqtt_config = {
            "platform": False,
            "module": {
                "name": ".util.mqtt_client",
                "class": "MqttProtocolAdapter"
            },
            "config": {
                "brokerUrl": "mqtt://localhost:1883",
                "topicNamespace": topic_namespace
            }
        }

    return MqttProtocolAdapter(mqtt_config['config'], name)
Esempio n. 4
0
async def test_validate_platform_protocol_usage(test_case):
    mqtt_def_config = MqttProtocolAdapter.create_default_configuration(is_platform_protocol=True)
    protocol_gateway_config = ProtocolGateway.create_default_configuration([mqtt_def_config])
    protocol_gateway = ProtocolGateway(protocol_gateway_config, 'TestProtocolGateway', use_platform_protocol_only=True)
    publish_options = ProtocolGateway.create_publish_options(platform_protocol_only=False)
    with pytest.raises(Exception) as exc_info:
        await protocol_gateway.publish("test_topic", "test message", publish_options)
    test_case.assertEqual(
        f'Gateway is configured to only use the provided platform protocol. Runtime request for all protocols given.',
        str(exc_info.value))
Esempio n. 5
0
def protocol_gateway():
    mqtt_def_config = MqttProtocolAdapter.create_default_configuration(
        is_platform_protocol=True)
    protocol_gateway_config = ProtocolGateway.create_default_configuration(
        [mqtt_def_config])
    return ProtocolGateway(protocol_gateway_config, 'TestProtocolGateway')
        def __init__(self):
            mqtt_config = MqttProtocolAdapter.create_default_configuration()
            pg_config = ProtocolGateway.create_default_configuration(
                [mqtt_config])

            super().__init__('test-func-talent', pg_config)
Esempio n. 7
0
        def __init__(self):
            mocker.patch('src.iotea.core.talent.uuid4', wraps=mock_uuid)
            mqtt_config = MqttProtocolAdapter.create_default_configuration()
            pg_config = ProtocolGateway.create_default_configuration([mqtt_config])

            super().__init__('test-talent', pg_config)
Esempio n. 8
0
def mqtt_adapter(name):
    mqtt_def_config = MqttProtocolAdapter.create_default_configuration()
    return MqttProtocolAdapter(mqtt_def_config['config'], name)