Test Inventory¶
Current test counts and coverage status for rustvello v0.1.0.
Summary¶
Category |
Count |
|---|---|
Inline unit test modules ( |
53 |
Shared test functions (test-suite) |
51 |
Backend suite instantiations |
7 backends |
Integration test files |
9 (main crate) + 11 (other crates) |
Property-based tests (proptest) |
8+ |
Fuzz targets |
2 |
Benchmark groups (criterion) |
2 (6 benchmarks) |
Backend Compliance Suite¶
51 shared test functions across 7 modules:
Module |
Tests |
What it verifies |
|---|---|---|
|
11 |
Message routing, FIFO ordering, per-task isolation, batch routing, language-specific queues, purge |
|
10 |
Invocation registration, status transitions, queries by task/status, pagination, concurrency control, purge |
|
7 |
State upsert/get, call retrieval, result/error storage, history, purge |
|
11 |
Condition registration, event/cron conditions, trigger lifecycle, optimistic locking, dedup, purge |
|
7 |
Store/retrieve, missing key errors, upsert semantics, multiple keys, large values, backend name |
|
5 |
Full success/failure lifecycle, multiple invocations, purge-all, broker-orchestrator consistency |
Backend Instantiation Matrix¶
Backend |
Style |
Docker |
Suites |
|---|---|---|---|
mem |
Sync macros |
No |
6 |
sqlite |
Manual wiring |
No |
6 |
redis |
Async macros |
Yes |
6 |
mongo |
Async macros |
Yes |
6 |
mongo3 |
Async macros |
Yes |
6 |
postgres |
Async macros |
Yes |
6 |
rabbitmq |
Async macros |
Yes |
1 (broker only) |
Inline Unit Tests by Crate¶
Crate |
Modules |
Notable coverage |
|---|---|---|
|
9 |
Context, serializer, call, workflow, trigger, task, client data store, error, observability |
|
6 |
Call, invocation, status, trigger, identifiers, config |
|
13 |
Parser, SVG rendering, builder, color, bounds, CSRF, time range, lane assignment |
|
5 |
Trigger builder, app builder, persistent/per-invocation tokio runners |
|
5 |
All 5 trait implementations |
|
5 |
All 5 trait implementations |
|
3 |
Broker, orchestrator, connection |
|
2 |
Connection, orchestrator |
|
1 |
Broker |
|
1 |
Sink |
|
2 |
Utils, error |
|
0 |
Tests in integration file only |
Integration Tests (Main Crate)¶
File |
Lines |
Tests |
Focus |
|---|---|---|---|
|
1,398 |
~30 |
Task type ergonomics, compilation checks |
|
502 |
~12 |
Trigger system end-to-end |
|
435 |
11 |
Full application lifecycle |
|
408 |
8 |
Backend × runner × serializer matrix |
|
317 |
8 |
Runner edge cases, error recovery |
|
300 |
~14 |
Multi-step workflow orchestration |
|
261 |
4 |
Runner context and spans |
|
190 |
~4 |
Tracing span propagation |
|
174 |
~6 |
Task discovery and registration |
Other Integration Tests¶
Crate |
File |
Focus |
|---|---|---|
|
|
Completeness guarantee |
|
|
Full HTTP dashboard |
|
|
CLI argument parsing |
|
|
Property-based serde tests |
Known Gaps¶
Area |
Status |
Notes |
|---|---|---|
Docker tests in CI |
⚠️ Skipped |
GitHub Actions lacks Docker service containers |
Python FFI tests |
⚠️ Broken |
|
Multi-threaded tokio tests |
⚠️ Missing |
No |
Concurrency verification |
⚠️ Missing |
No |
SQLite macro migration |
ℹ️ Optional |
Still uses manual wiring (works fine, just verbose) |