Skip to content

Test Request Predeploys

Documentation for tests/amsterdam/eip8282_builder_execution_requests/test_request_predeploys.py@52161d99.

Generate fixtures for these test cases for Amsterdam with:

fill -v tests/amsterdam/eip8282_builder_execution_requests/test_request_predeploys.py --fork Amsterdam

Request predeploy tests for EIP-8282: Builder Execution Requests.

The builder deposit and exit contracts reuse the queue design of the EIP-7002 withdrawal and EIP-7251 consolidation contracts, so every test here runs against all four predeploys. Plain requests live in the deposit and exit modules.

Test Functions Overview

Name Type Cases (Amsterdam) Description
test_fee_decays_to_minimum blockchain_test 4 Raise the fee with one block of requests, then send nothing: each
test_fee_getter blockchain_test 8 A relay queues requests and then calls the predeploy with empty calldata,
test_fee_getter_inhibited blockchain_test 4 While the inhibitor is set, a fee query reverts like any other call from
test_request_from_initcode blockchain_test 12 Initcode submits a request; the predeploy records the address under
test_request_from_set_code_delegated_account blockchain_test 4 An account delegated to a relay submits a request; the predeploy records
test_request_gas_boundary blockchain_test 4 The relay measures the gas a request consumes at runtime, then forwards
test_request_overpayment blockchain_test 4 A request paying one wei more than required is queued and the surplus
test_request_via_delegatecall_staticcall_callcode blockchain_test 12 None of these call types queues a request in the predeploy: DELEGATECALL
test_requests_exhaust_block_gas blockchain_test 8 Fill a block with request enqueues from transactions carrying the
test_value_without_calldata_from_transaction blockchain_test 4 A transaction that sends value to the predeploy with empty calldata