This PR adds 1 E2E test for a basic SQS splitting case. There are still things missing, and some things that are potential issue either in the mirrord-SQS-operator or in the test, but I would like to merge the test and solve more issues later, so that we already have basic protection against regressions.
For the test there should be a deployed localstack instance. A test fixture patches the installed operator to use that localstack instead of actual AWS SQS.
The test deploys a service that consumes 2 queues (one normal, one FIFO), starts two clients that split messages with different filters, sends messages with attributes that make some of them reach each of the two clients and the deployed application. The test then verifies each of those 3 applications received the messages it was supposed to.
Unresolved issues:
Relying on sleeps instead of providing/identifying a reliable indicator that filtering started.
There is no verification that all queues are automatically removed after all sessions are done, because that did not work - might be a bug.
Support for running the test with actual SQS instead of localstack.
Part of #2670
This PR adds 1 E2E test for a basic SQS splitting case. There are still things missing, and some things that are potential issue either in the mirrord-SQS-operator or in the test, but I would like to merge the test and solve more issues later, so that we already have basic protection against regressions.
For the test there should be a deployed localstack instance. A test fixture patches the installed operator to use that localstack instead of actual AWS SQS. The test deploys a service that consumes 2 queues (one normal, one FIFO), starts two clients that split messages with different filters, sends messages with attributes that make some of them reach each of the two clients and the deployed application. The test then verifies each of those 3 applications received the messages it was supposed to.
Unresolved issues:
https://github.com/metalbear-co/test-images/pull/21 has to be merged first, then the image can be changed to the published test image.