Skip to content

Test EXTCODEHASH

Documentation for tests/constantinople/eip1052_extcodehash/test_extcodehash.py@8db70f93.

Generate fixtures for these test cases for Amsterdam with:

fill -v tests/constantinople/eip1052_extcodehash/test_extcodehash.py --fork Amsterdam

Test EIP-1052 EXTCODEHASH.

Test Functions Overview

Name Type Cases (Amsterdam) Description
test_codecopy_zero_in_create2 state_test 1 Test CODECOPY inside CREATE2 initcode that deploys empty code.
test_extcodecopy_zero_code state_test 2 Test EXTCODECOPY/EXTCODESIZE/EXTCODEHASH of accounts with no code.
test_extcodehash_after_selfdestruct state_test 3 Test EXTCODEHASH/EXTCODESIZE/EXTCODECOPY before and after SELFDESTRUCT.
test_extcodehash_call_to_nonexistent state_test 4 Test EXTCODEHASH after calling a non-existent account.
test_extcodehash_call_to_selfdestruct state_test 4 Test EXTCODEHASH after calling a contract that selfdestructs.
test_extcodehash_changed_account state_test 1 Test EXTCODEHASH/EXTCODESIZE before and after changing account state.
test_extcodehash_codeless_with_storage state_test 3 Test EXTCODEHASH/EXTCODESIZE of a codeless account that has storage.
test_extcodehash_created_and_deleted state_test 2 Test EXTCODEHASH of an account created and selfdestructed in same tx.
test_extcodehash_created_and_deleted_recheck_outer state_test 1 Test EXTCODEHASH of a created-and-selfdestructed account rechecked
test_extcodehash_dynamic_account_overwrite state_test 2 Test EXTCODEHASH of non-existent/no-code account,
test_extcodehash_dynamic_argument state_test 5 Test EXTCODEHASH/EXTCODESIZE with address loaded dynamically from calldata.
test_extcodehash_empty_account_variants state_test 5 Test EXTCODEHASH/EXTCODESIZE/EXTCODECOPY for empty-account variants.
test_extcodehash_empty_contract_creation state_test 2 Test EXTCODEHASH/EXTCODESIZE for empty contracts created with
test_extcodehash_empty_send_value state_test 1 Test EXTCODEHASH of non-existent account before and after sending value.
test_extcodehash_in_init_code state_test 3 Test EXTCODEHASH/EXTCODESIZE of an external account during init code.
test_extcodehash_max_code_size state_test 4 Test EXTCODEHASH/EXTCODESIZE of a contract near max code size.
test_extcodehash_new_account state_test 4 Test EXTCODEHASH/EXTCODESIZE of a contract created within the same tx.
test_extcodehash_of_empty state_test 2 Test EXTCODEHASH/EXTCODESIZE for non-existent and empty accounts.
test_extcodehash_precompile state_test 18 Test EXTCODEHASH/EXTCODESIZE of precompile addresses.
test_extcodehash_self state_test 1 Test EXTCODEHASH/EXTCODESIZE of the currently executing account.
test_extcodehash_self_in_init state_test 3 Test EXTCODEHASH/EXTCODESIZE of self during init code.
test_extcodehash_subcall_create2_oog state_test 6 Test EXTCODEHASH after CREATE2 in a subcall that goes out of gas.
test_extcodehash_subcall_selfdestruct state_test 4 Test EXTCODEHASH after subcall with CALLCODE/DELEGATECALL to SELFDESTRUCT.
test_extcodehash_via_call state_test 4 Test EXTCODEHASH/EXTCODESIZE queried via different call types.