tests/jetstream.rs: the store, event log and projection against a real JetStream

Until now nothing outside a live site exercised the NATS side: the
aggregate engine was tested by in-memory replay only. This test
submits an answer, moves it from a desk through the engine, checks
that an undeclared move and an unknown record are refused, and reads
the record back from its own event log. It runs when
PORTAL_TEST_NATS_URL is set; CI starts a throwaway nats:2.14.6-alpine
with JetStream for it and tears it down. Without the variable the
test passes as skipped, so `cargo test` stays green offline.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L4jrCgLiKKHAEFuZUJjckH
This commit is contained in:
Bendik Aagaard Lynghaug
2026-09-22 16:51:15 +02:00
co-authored by Claude Fable 5.1
parent f909657c14
commit e06346e43a
3 changed files with 87 additions and 0 deletions
+4
View File
@@ -106,6 +106,10 @@ ssr = [
[dev-dependencies]
proptest = "1"
[[test]]
name = "jetstream"
required-features = ["ssr"]
[[bin]]
name = "question_lint"
path = "src/bin/question_lint.rs"