# Supported operations: create, operations and read
# Config map:
## output: A map of strings that will be part of the request for the output binding
## readBindingTimeout : timeout to wait to receive test event
## readBindingWait : duration to wait after successful Read before attempting to Publish
## url: specific to http component, url of the http server
## method: specific to http component, what method to use
componentType: bindings
components:
  - component: redis
    operations: ["create", "operations"]
    config:
      output:
        key: $((uuid))
  - component: azure.blobstorage
    operations: ["create", "operations", "get", "list"]
    config:
      output:
        blobName: $((uuid))
      outputData: '{"maxResults": 10, "include": {"metadata": true, "snapshots": false}}'
  - component: azure.cosmosdb
    operations: ["create", "operations"]
    config:
      outputData: '{"id": "$((uuid))", "orderid": "abcdef-test", "partitionKey": "partitionValue", "nestedproperty": {"subproperty": "something of value for testing"}, "description": "conformance test item"}'
  - component: azure.eventhubs
    operations: ["create", "operations", "read"]
  - component: azure.eventgrid
    operations: ["create", "operations", "read"]
    config:
      readBindingTimeout: 240s
      readBindingWait: 8s
  - component: azure.storagequeues
    operations: ["create", "operations", "read"]
  - component: azure.servicebusqueues
    operations: ["create", "operations", "read"]
  - component: kafka
    operations: ["create", "operations"]
  - component: http
    operations: ["create", "operations"]
    config:
      url: "localhost:22222"
      method: "POST"
  - component: influx
    operations: ["create", "operations"]
    config:
      outputData: '{ "measurement": "TestMeasurement", "tags": "unit=temperature", "values": "avg=23.5" }'
  - component: mqtt
    profile: mosquitto
    operations: ["create", "operations", "read"]
  - component: mqtt
    profile: emqx
    operations: ["create", "operations", "read"]
  - component: mqtt
    profile: vernemq
    operations: ["create", "operations", "read"]
  - component: rabbitmq
    operations: ["create", "operations", "read"]
    config:
      checkInOrderProcessing: false