Skip to main content

Crate atomr_persistence_tck

Crate atomr_persistence_tck 

Source
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_tags capability 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.