Skip to content

Test EXCHANGE

Documentation for tests/amsterdam/eip8024_dupn_swapn_exchange/test_exchange.py@tests-snobal-devnet-6@v1.1.0.

Generate fixtures for these test cases for Amsterdam with:

fill -v tests/amsterdam/eip8024_dupn_swapn_exchange/test_exchange.py --fork Amsterdam

EXCHANGE instruction tests.

Tests for EXCHANGE instruction in EIP-8024: Stack Access Instructions.

Test Functions Overview

Name Type Cases (Amsterdam) Description
test_endofcode_behavior state_test 1 Test EXCHANGE when the immediate byte is beyond the end of code.
test_exchange_basic state_test 6 Test EXCHANGE with various n and m values.
test_exchange_invalid_immediate_aborts state_test 46 Test EXCHANGE aborts with invalid immediates (82-127).
test_exchange_jump_to_immediate_byte state_test 12 Test jumping to EXCHANGE immediate byte position.
test_exchange_preserves_other_items state_test 1 Test EXCHANGE only swaps specified items, leaving others unchanged.
test_exchange_stack_underflow state_test 8 Test EXCHANGE causes transaction failure on stack underflow.
test_exchange_valid_immediates state_test 11 Test EXCHANGE with valid immediate values (0-81 and 128-255).
test_exchange_with_push_sequence state_test 1 Test EXCHANGE swapping positions 10 and 17 with a push sequence.