Skip to content

Test Block Access Lists Cross Index

Documentation for tests/amsterdam/eip7928_block_level_access_lists/test_block_access_lists_cross_index.py@c74f1a67.

Generate fixtures for these test cases for Amsterdam with:

fill -v tests/amsterdam/eip7928_block_level_access_lists/test_block_access_lists_cross_index.py --fork Amsterdam

Tests for EIP-7928 BAL cross-index tracking.

Tests that state changes are correctly tracked across different block indices: - Index 1..N: Regular transactions - Index N+1: Post-execution system operations

Includes tests for system contracts (withdrawal/consolidation) cross-index tracking and NOOP filtering behavior.

Test Functions Overview

Name Type Cases (Amsterdam) Description
test_bal_consolidation_contract_cross_index blockchain_test 1 Test that the consolidation system contract shows storage changes at both
test_bal_intra_tx_round_trip_after_prior_tx_write blockchain_test 1 Verify a per-tx no-op SSTORE round-trip is not recorded as a storage
test_bal_noop_write_filtering blockchain_test 1 Test that NOOP writes (writing same value or 0 to empty) are filtered.
test_bal_system_contract_noop_filtering blockchain_test 1 Test that system contract post-execution calls filter net-zero
test_bal_withdrawal_contract_cross_index blockchain_test 1 Test that the withdrawal system contract shows storage changes at both
test_bal_withdrawal_predeploy_balance_observed_cross_tx blockchain_test 1 Test that a subsequent transaction observes the post-state balance of the