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

Check dead letter queues in system tests #3834

Open
patchwork01 opened this issue Nov 29, 2024 · 0 comments
Open

Check dead letter queues in system tests #3834

patchwork01 opened this issue Nov 29, 2024 · 0 comments

Comments

@patchwork01
Copy link
Collaborator

patchwork01 commented Nov 29, 2024

Background

Currently system tests pass or fail based on assertions on the state of Sleeper tables.

Description

We'd like system tests to fail if there are any messages on dead letter queues at the end of the tests.

If the messages are related to other tables than the ones created for the tests, we'd like to ignore them. In case other tests are running in parallel, we'd like to ensure the test that did create those tables will be able to find the dead letter message as well.

Analysis

We could have a store that's shared by all tests that will receive messages from all the dead letter queues and cache them in memory to fail the relevant tests at the end.

We can have the JUnit extension SleeperSystemTestExtension check for any dead letters relevant to the current test in afterEach. If any dead letters are relevant to an instance as a whole rather than specific tables, we could fail every test that was connected to that instance at the time the dead letter was found. We'd need to add a thread-safe way to track the current running tests.

@patchwork01 patchwork01 added this to the 0.29.0 milestone Nov 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant