Skip to content

Test Fork Transition

Documentation for tests/amsterdam/eip7976_increase_calldata_floor_cost/test_fork_transition.py@c17999c0.

Generate fixtures for these test cases for Amsterdam with:

fill -v tests/amsterdam/eip7976_increase_calldata_floor_cost/test_fork_transition.py --fork Amsterdam

Fork-transition tests for EIP-7976.

EIP-7976 raises the calldata floor price at the Amsterdam fork boundary: the EIP-7623 floor of 10 gas per token (10/40 per zero or non-zero byte) becomes 16 gas per floor token with floor tokens counted uniformly as four per calldata byte (64/64). These tests send identical data-heavy transactions in a pre-fork block and a post-fork block and assert that the floor changes exactly at the boundary, both as billed gas and as the transaction-validity threshold.

The calldata sizes sit above the crossover where the new floor exceeds the old one: EIP-2780 lowers the floor anchor (the decomposed intrinsic base) below the flat pre-fork 21_000, so for small calldata the new floor is the lower of the two even though the per-byte rate rises.

Test Functions Overview

Name Type Cases (Amsterdam) Description
test_floor_cost_across_amsterdam_transition blockchain_test 2 Pin the EIP-7976 floor increase across the Amsterdam boundary.
test_floor_validity_across_amsterdam_transition blockchain_test 8 Pin the EIP-7976 validity-threshold change across the boundary.