microservice_framework_version_6
microservice_framework_version_6 copied to clipboard
Event priming and assertion tooling
We need new utility classes to simplify the process of working with events in tests.
Event Priming
- Allow tests to prime an event store with some events in a way that stores them and (optionally) publishes them
- Events might be provided via Java code, or via JSON files
- Events might need to be primed in multiple data sources
- Event metadata that is normally set by the event store might need to be specified explicitly
- Option needed to assert against a view store to confirm that all the events have been consumed, probably by polling the stream status table
Event Assertions
- Allow tests to do assertions against the event store to confirm that a stream is in a certain state
- Expected events might be provided via Java code, or via JSON files
- Assertions might need to ignore some metadata when comparing
- Assertions might need to wait and/or check that no additional events are stored.