Files
logos-execution-zone/test_fixtures
7dac077487 test: add cucumber environment with initial ported integration tests (#741)
This PR introduces the initial Cucumber-based integration test framework for the LEZ, building on the testing-framework integration work started by @andrussal, adds the first set of Cucumber integration scenarios and establishes reusable infrastructure for future Cucumber scenarios.

---------

Co-authored-by: Andrus Salumets <salumets.andrus@gmail.com>
Co-authored-by: Sergio Chouhy <sergio.chouhy@gmail.com>
Co-authored-by: Sergio Chouhy <41742639+schouhy@users.noreply.github.com>
Co-authored-by: Roman <zajic@zajic.net>
Co-authored-by: Daniil Polyakov <arjentix@gmail.com>
Co-authored-by: Moudy <m.ellaz@hotmail.com>
Co-authored-by: andrussal <salumets.andrus@gmail.com>
2026-08-20 21:15:05 +02:00
..

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:

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):

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.