@@ -176,7 +176,13 @@ def {{ test_name }}(
176176{% for addr in address_constants %}
177177 {{ addr.var_name }} = Address({{ addr.hex }})
178178{% endfor %}
179- {% if sender .not_in_pre %}
179+ {% if sender .use_dynamic %}
180+ {% if sender .nonce %}
181+ sender = pre.fund_eoa(amount={{ sender.balance | format_int }}, nonce={{ sender.nonce }})
182+ {% else %}
183+ sender = pre.fund_eoa(amount={{ sender.balance | format_int }})
184+ {% endif %}
185+ {% elif sender .not_in_pre %}
180186 sender = pre.fund_eoa(amount=0)
181187{% else %}
182188 sender = EOA(
@@ -205,15 +211,19 @@ def {{ test_name }}(
205211
206212{# Pre-state account setup #}
207213{% for account in accounts %}
208- {% if account .is_sender %}
214+ {% if account .is_sender and sender .use_dynamic %}
215+ {# Sender balance already set via pre.fund_eoa() above #}
216+ {% elif account .is_sender %}
209217 pre[sender] = Account(balance={{ account.balance | format_int }}{{ ", nonce=%d" | format(account.nonce) if account.nonce }}{{ ", storage=%s" | format(account.storage | format_storage) if account.storage }}{{ ", code=%s" | format(account.code_expr | wrap_op_chain(indent=8)) if account.code_expr }})
218+ {% elif account .is_eoa and account .use_dynamic %}
219+ {{ account.var_name }} = pre.fund_eoa(amount={{ account.balance | format_int }})
210220{% elif account .is_eoa %}
211221 pre[{{ account.var_name }}] = Account(balance={{ account.balance | format_int }}{{ ", nonce=%d" | format(account.nonce) if account.nonce }}{{ ", storage=%s" | format(account.storage | format_storage) if account.storage }}{{ ", code=%s" | format(account.code_expr | wrap_op_chain(indent=8)) if account.code_expr }})
212222{% else %}
213223{# Contract: source comment + deploy #}
214224{{ account.source_comment }}
215225{% if account .oversized_code %}
216- {{ account.var_name }} = Address({{ account.address }})
226+ {{ account.var_name }} = Address({{ account.address }}) # oversized contract
217227 pre[{{ account.var_name }}] = Account(
218228 code={{ account.code_expr | wrap_op_chain(indent=8) }},
219229{% if account .storage %}
@@ -238,7 +248,9 @@ def {{ test_name }}(
238248{% if account .nonce is not none %}
239249 nonce={{ account.nonce }},
240250{% endif %}
251+ {% if not account .use_dynamic %}
241252 address=Address({{ account.address }}), # noqa: E501
253+ {% endif %}
242254 )
243255{% endif %}
244256{% endif %}
@@ -287,7 +299,11 @@ def {{ test_name }}(
287299 {{ d_idx }}: [
288300 {% for al in al_entries %}
289301 AccessList(
302+ {% if al .use_dynamic %}
303+ address={{ al.address }},
304+ {% else %}
290305 address=Address({{ al.address }}),
306+ {% endif %}
291307 storage_keys=[
292308 {% for sk in al .storage_keys %}
293309 Hash("{{ sk }}"), # noqa: E501
@@ -357,7 +373,11 @@ def {{ test_name }}(
357373 access_list=[
358374{% for al in tx .access_list %}
359375 AccessList(
376+ {% if al .use_dynamic %}
377+ address={{ al.address }},
378+ {% else %}
360379 address=Address({{ al.address }}),
380+ {% endif %}
361381 storage_keys=[
362382{% for sk in al .storage_keys %}
363383 Hash(
0 commit comments