|
|
a7094fc47f
|
test: P0-G end-to-end smoke tests — WAL, checkpoint, hooks, GC, Cap'n Proto (P0-15a-e)
Add 5 E2E integration test files that cross sub-phase boundaries:
- test_e2e_wal.c (P0-15a): WAL write+read-back (entry count), torn-write
recovery via ftruncate + persist_recover(), chained-CRC corruption stops
replay at last valid entry.
- test_e2e_checkpoint.c (P0-15b): 20-entry WAL + checkpoint + 10 post-
checkpoint entries + recover asserts current_lsn >= 30 and checkpoint_lsn
> 0; WAL trim after two checkpoints; snap_keep_n rotation with 4 rounds.
- test_e2e_hooks.c (P0-15c): persist_job_hook_fun(HOOK_DETAIL_JOB_NEW)
writes WAL_JOB_SUBMIT entry; persist_worker_hook_fun(HOOK_DETAIL_WORKER_JOIN)
writes WAL_WORKER_CTRL; 3-call sequence preserves monotone LSN order and
verifies header LSN fields on disk.
- test_e2e_gc.c (P0-15d): running job retained; expired finished job not
retained; JOB_STAT_TRANSIENT times out; expired unavailable worker not
retained; checkpoint-after-WAL integration smoke.
- test_e2e_capnp.c (P0-15e): persist_config_t → capnp_persist_cfg_t 8-field
round-trip; capnp_snap_hdr_t field values and struct size (48 bytes);
capnp_repl_envelope_t fields including WAL_CRC_NONE sentinel.
Total: 89 tests, 0 failures (was 72 before this commit).
|
2026-05-07 13:25:17 +00:00 |
|