Expand description
atomr-persistence-tck.
Provides reusable spec functions plugin authors can call against their
Journal and
SnapshotStore implementations.
The suite is split into journal_suite and snapshot_suite modules
(plus the lightweight round-trip helpers retained for historical usage).
Functions§
- journal_
concurrent_ suite - Concurrent-writer interleaving. Writes batches for two distinct persistence ids concurrently; both replays must observe a contiguous sequence with no cross-id leakage.
- journal_
extended_ suite - Extended suite covering edge cases drawn from upstream’s Replay-from-mid, replay-after-delete, idempotent replay, max=0 short-circuit, and concurrent-writer interleaving.
- journal_
replay_ edge_ cases - Edge-case replay assertions: empty pid, replay past the end,
delete-to-zero, replay against a deleted prefix. Mirrors a subset
of upstream
JournalSpec’s “additional behaviour” suite. - journal_
round_ trip - Simple write/replay round trip. Returns true on success.
- journal_
suite - Full journal conformance suite. Panics with a descriptive message on
the first failing assertion so callers can wire it straight into
#[tokio::test]without additional boilerplate. - journal_
tag_ suite - Conformance for optional tag-based querying. Callers gate this on a
supports_tagscapability flag since not every backend implements it. - snapshot_
extended_ suite - Extended snapshot conformance suite. Covers: latest-wins across multiple saves, cross-pid isolation, partial deletes, no-op deletes against unknown pids, and concurrent saves for the same pid.
- snapshot_
round_ trip - Smoke test: save and load a single snapshot.
- snapshot_
suite - Full snapshot conformance suite.