Exemple #1
0
def test_get_iam_permissions(test_topic, capsys):
    manager.open_registry(service_account_json, project_id, cloud_region,
                          pubsub_topic, registry_id)

    manager.list_devices(service_account_json, project_id, cloud_region,
                         registry_id)

    # Test getting IAM permissions
    print(
        manager.get_iam_permissions(service_account_json, project_id,
                                    cloud_region, registry_id))

    # Test setting IAM permissions
    MEMBER = "group:[email protected]"
    ROLE = "roles/viewer"
    print(
        manager.set_iam_permissions(service_account_json, project_id,
                                    cloud_region, registry_id, ROLE, MEMBER))

    out, _ = capsys.readouterr()

    # Check that create / list worked
    assert 'Created registry' in out
    assert 'event_notification_config' in out
    assert 'dpebot' in out
    assert 'etag' in out

    # Clean up
    manager.delete_registry(service_account_json, project_id, cloud_region,
                            registry_id)
def test_get_iam_permissions(test_topic, capsys):
    manager.open_registry(
            service_account_json, project_id, cloud_region, pubsub_topic,
            registry_id)

    manager.list_devices(
            service_account_json, project_id, cloud_region, registry_id)

    # Test getting IAM permissions
    print(manager.get_iam_permissions(
            service_account_json, project_id, cloud_region, registry_id))

    # Test setting IAM permissions
    MEMBER = "group:[email protected]"
    ROLE = "roles/viewer"
    print(manager.set_iam_permissions(
            service_account_json, project_id, cloud_region, registry_id,
            ROLE, MEMBER))

    out, _ = capsys.readouterr()

    # Check that create / list worked
    assert 'Created registry' in out
    assert 'eventNotificationConfig' in out
    assert 'etag' in out

    # Clean up
    manager.delete_registry(
            service_account_json, project_id, cloud_region, registry_id)
Exemple #3
0
def test_create_delete_registry(test_topic, capsys):
    manager.open_registry(service_account_json, project_id, cloud_region,
                          pubsub_topic, registry_id)

    manager.list_devices(service_account_json, project_id, cloud_region,
                         registry_id)

    out, _ = capsys.readouterr()

    # Check that create / list worked
    assert 'Created registry' in out
    assert 'event_notification_config' in out

    # Clean up
    manager.delete_registry(service_account_json, project_id, cloud_region,
                            registry_id)
def test_create_delete_registry(test_topic, capsys):
    manager.open_registry(
            service_account_json, project_id, cloud_region, pubsub_topic,
            registry_id)

    manager.list_devices(
            service_account_json, project_id, cloud_region, registry_id)

    out, _ = capsys.readouterr()

    # Check that create / list worked
    assert 'Created registry' in out
    assert 'eventNotificationConfig' in out

    # Clean up
    manager.delete_registry(
            service_account_json, project_id, cloud_region, registry_id)
Exemple #5
0
def test_send_command(test_topic, capsys):
    device_id = device_id_template.format('RSA256')
    manager.create_registry(
            service_account_json, project_id, cloud_region, pubsub_topic,
            registry_id)

    exists = False
    devices = manager.list_devices(
            service_account_json, project_id, cloud_region, registry_id)
    for device in devices:
        if device.get('id') == device_id:
            exists = True

    if not exists:
        manager.create_rs256_device(
                service_account_json, project_id, cloud_region, registry_id,
                device_id, rsa_cert_path)

    # Exercize the functionality
    client = cloudiot_mqtt_example.get_client(
        project_id, cloud_region, registry_id, device_id,
        rsa_private_path, 'RS256', ca_cert_path,
        'mqtt.googleapis.com', 443)
    client.loop_start()
    out, _ = capsys.readouterr()

    # Pre-process commands
    for i in range(1, 5):
        client.loop()
        time.sleep(1)

    manager.send_command(
            service_account_json, project_id, cloud_region, registry_id,
            device_id, 'me want cookies')
    out, _ = capsys.readouterr()

    # Process commands
    for i in range(1, 5):
        client.loop()
        time.sleep(1)

    # Clean up
    manager.delete_device(
            service_account_json, project_id, cloud_region, registry_id,
            device_id)
    manager.delete_registry(
            service_account_json, project_id, cloud_region, registry_id)

    assert 'Sending command to device' in out
    assert '400' not in out
def test_send_command(test_topic, capsys):
    device_id = device_id_template.format('RSA256')
    manager.create_registry(
            service_account_json, project_id, cloud_region, pubsub_topic,
            registry_id)

    exists = False
    devices = manager.list_devices(
            service_account_json, project_id, cloud_region, registry_id)
    for device in devices:
        if device.get('id') == device_id:
            exists = True

    if not exists:
        manager.create_rs256_device(
                service_account_json, project_id, cloud_region, registry_id,
                device_id, rsa_cert_path)

    # Exercize the functionality
    client = cloudiot_mqtt_example.get_client(
        project_id, cloud_region, registry_id, device_id,
        rsa_private_path, 'RS256', ca_cert_path,
        'mqtt.googleapis.com', 443)
    client.loop_start()
    out, _ = capsys.readouterr()

    # Pre-process commands
    for i in range(1, 5):
        client.loop()
        time.sleep(1)

    manager.send_command(
            service_account_json, project_id, cloud_region, registry_id,
            device_id, 'me want cookies')
    out, _ = capsys.readouterr()

    # Process commands
    for i in range(1, 5):
        client.loop()
        time.sleep(1)

    # Clean up
    manager.delete_device(
            service_account_json, project_id, cloud_region, registry_id,
            device_id)
    manager.delete_registry(
            service_account_json, project_id, cloud_region, registry_id)

    assert 'Sending command to device' in out
    assert '400' not in out