You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: tests/amsterdam/eip7928_block_level_access_lists/test_cases.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@
7
7
|`test_bal_storage_writes`| Ensure BAL captures storage writes | Alice calls contract that writes to storage slot `0x01`| BAL MUST include storage changes with correct slot and value | ✅ Completed |
8
8
|`test_bal_storage_reads`| Ensure BAL captures storage reads | Alice calls contract that reads from storage slot `0x01`| BAL MUST include storage access for the read operation | ✅ Completed |
9
9
|`test_bal_code_changes`| Ensure BAL captures changes to account code | Alice deploys factory contract that creates new contract | BAL MUST include code changes for newly deployed contract | ✅ Completed |
10
-
|`test_bal_self_destruct`| Ensure BAL captures balance changes caused by `SELFDESTRUCT`| Alice calls a contract (funded with 100 wei) that executes `SELFDESTRUCT` with Bob as its recipient | BAL MUST include Alice's nonce change (increment), the self-destructing contract's balance change (100 → 0), and Bob's balance change (0 → 100) | ✅ Completed |
10
+
|`test_bal_self_destruct`| Ensure BAL captures balance changes caused by `SELFDESTRUCT`| Alice calls a contract (funded with 100 wei) that executes `SELFDESTRUCT` with Bob as its recipient | BAL MUST include Alice's nonce change (increment), the self-destructing contract's balance change (100 → 0), and Bob's balance change (0 → 100). If the contract is created in the same transaction, BAL MUST also include code changes (new_code = empty bytes, indicating code has been cleared)| ✅ Completed |
11
11
|`test_bal_2930_slot_listed_but_untouched`| Ensure 2930 access list alone doesn't appear in BAL | Include `(KV, S=0x01)` in tx's EIP-2930 access list; tx executes code that does **no**`SLOAD`/`SSTORE` to `S` (e.g., pure arithmetic/log). | BAL **MUST NOT** contain any entry for `(KV, S)` — neither reads nor writes — because the slot wasn't touched. | 🟡 Planned |
12
12
|`test_bal_2930_slot_listed_and_modified`| Ensure BAL records writes only because the slot is touched | Same access list as above, but tx executes `SSTORE` to `S`. | BAL **MUST** include `storage_changes` for `(KV, S)` (and no separate read record for that slot if implementation deduplicates). Presence in the access list is irrelevant; inclusion is due to the actual write. | 🟡 Planned |
13
13
|`test_bal_7702_delegated_create`| BAL tracks EIP-7702 delegation indicator write and contract creation | Alice sends a type-4 (7702) tx authorizing herself to delegate to `Deployer` code which executes `CREATE`| BAL MUST include for **Alice**: `code_changes` (delegation indicator), `nonce_changes` (increment from 7702 processing), and `balance_changes` (post-gas). For **Child**: `code_changes` (runtime bytecode) and `nonce_changes = 1`. | 🟡 Planned |
0 commit comments