mirror of
https://github.com/logos-blockchain/logos-execution-zone.git
synced 2026-07-09 23:39:34 +00:00
32 lines
1.1 KiB
Markdown
32 lines
1.1 KiB
Markdown
# test_fixtures
|
|
|
|
Shared test/bench fixtures that spin up bedrock + sequencer + indexer + wallet end-to-end.
|
|
|
|
## Library
|
|
|
|
`TestContext` drives the full stack for integration tests and benches:
|
|
|
|
```rust
|
|
let ctx = TestContext::new().await?; // fast: restores the prebuilt db dump
|
|
let ctx = TestContext::builder()
|
|
.from_scratch() // apply genesis + claim supply live
|
|
.with_genesis(actions) // custom genesis (implies from_scratch)
|
|
.disable_indexer()
|
|
.build().await?;
|
|
```
|
|
|
|
`TestContext::new()` restores `fixtures/prebuilt_sequencer_db.dump` (genesis + initial-supply claim
|
|
blocks) instead of re-applying genesis and re-proving the private claims, then syncs the wallet. Use
|
|
`from_scratch()` to build genesis live.
|
|
|
|
## Binary
|
|
|
|
`regenerate_test_fixture` regenerates that dump (needs Docker):
|
|
|
|
```sh
|
|
just regenerate-test-fixture # RISC0_DEV_MODE=1 cargo run -p test_fixtures --bin regenerate_test_fixture
|
|
```
|
|
|
|
Rerun and commit `fixtures/prebuilt_sequencer_db.dump` after changing genesis, the default accounts,
|
|
block format, or initial state.
|