Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RabbitMQ binding as Stable #1906

Closed
amulyavarote opened this issue Jul 22, 2022 · 3 comments · Fixed by #1910 or #1919
Closed

RabbitMQ binding as Stable #1906

amulyavarote opened this issue Jul 22, 2022 · 3 comments · Fixed by #1910 or #1919
Assignees
Milestone

Comments

@amulyavarote
Copy link
Contributor

amulyavarote commented Jul 22, 2022

The RabbitMQ Binding requires certification tests to be created.
Add conformance tests if not present.

Release Note

RELEASE NOTE: ADD Certification tests for RabbitMQ Binding

@amulyavarote
Copy link
Contributor Author

amulyavarote commented Jul 22, 2022

RabbitMQ Binding Certification

The purpose of this module is to provide tests that certify the RabbitMQ Binding as a stable component.

Certification Tests

  • Verify the queue is created/present.
    • Create component spec.
    • Run dapr application with component.
    • Ensure the queue is created/present.
  • Verify the connection is established to RabbitMQ.
    • Create component spec.
    • Run dapr application with component.
    • Ensure that you have access to the queue and connection to the queue is established.
  • Verify data is getting stored in the queue.
    • Create component spec with the data to be stored.
    • Run dapr application with component to store data in the queue as output binding.
    • Read stored data from the queue as input binding.
    • Ensure that read data is same as the data that was stored.
  • Verify Data level TTL is regarded.
    • Create component spec with the field ttlInSeconds.
    • Run dapr application with component.
    • Send a message, wait TTL seconds, and verify the message is deleted/expired.
  • Verify durable attribute is regarded.
    • Create component spec with the field durable set true.
    • Run dapr application with component.
    • Send a message to the queue.
    • Ensure that the message is stored in the storage.
  • Verify deleteWhenUnused attribute is regarded.
    • Create component spec with the field deleteWhenUnused set true.
    • Run dapr application with component.
    • Send a message to the queue.
    • Ensure that the message is deleted.
  • Verify maxPriority attribute is regarded.
    • Create component spec with the field maxPriority.
    • Run dapr application with component.
    • Ensure that the priority queue is created.
  • Verify reconnection to the queue for output binding.
    • Simulate a network error before sending any messages.
    • Run dapr application with the component.
    • After the reconnection, send messages to the queue.
    • Ensure that the messages sent after the reconnection are sent to the queue.
  • Verify reconnection to the queue for input binding.
    • Simulate a network error before reading any messages.
    • Run dapr application with the component.
    • After the reconnection, read messages from the queue.
    • Ensure that the messages after the reconnection are read.

@amulyavarote
Copy link
Contributor Author

/assign

@mukundansundar
Copy link
Contributor

@artursouza #1910 is for conformance tests and not certification ...

@mukundansundar mukundansundar reopened this Aug 3, 2022
@mukundansundar mukundansundar added this to the v1.9 milestone Aug 3, 2022
@greenie-msft greenie-msft changed the title Add certification tests for RabbitMQ Binding RabbitMQ binding as Stable Nov 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment