Skip to main content

CHANGELOG.md

# Changelog

All notable changes to **evoq-testkit** are documented here.

## [Unreleased]

### Added

- `evoq_aggregate_spec` (Layer A): sequence-driven pure aggregate test spec.
  Inject a command sequence; after each command assert expected events, no
  unexpected events (exact match), no failure (or the expected error reason),
  and a state predicate. State threads via `apply/2`. Two forms: tuple-list
  `run/3` and an eager builder (`new`/`given_events`/`exec`/`emits`/`state`/
  `fails_with`/`done`). Pure — no store, no processes.
- Self-tests covering the happy paths, state threading, `given_events`
  seeding, and every failure mode (the spec must fail loudly when an
  expectation is violated).