Skip to content

Commit c6ea4a4

Browse files
authored
new(tests): EIP-7702 - Set EOA account code for one transaction (Devnet-1) (ethereum#621)
* feat(fw): Add type-4 transaction and authorization tuple type * new(tests): Add EIP-7702 folder, first test * tests: create contract * new(tests): more 7702 tests * new(tests): EIP-7702 * new(tests): EIP-7702 * typo * fix(fw): minor refactor * new(tests): parametrize sanity test with and without balance * fix(tests): fixes * fix(fw): nonce field in the auth tuple * fix(tests): fix some of the tests * fix(tests): test fixes and skips * fix(test): skip * fix(specs): output the authorization list to the fixture * nit * more tests * fix(fw): State test type-4 fix * fix(fw): Transaction type checks * fix(fixtures): Fixture transaciton type-4 test * fix(base_types): Storage methods * fix(tests): storage method usage * changelog
1 parent cdd0c21 commit c6ea4a4

File tree

3 files changed

+948
-0
lines changed

3 files changed

+948
-0
lines changed
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
"""
2+
Cross-client EIP-7702 Tests
3+
"""

prague/eip7702_eoa_code_tx/spec.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
"""
2+
Defines EIP-7702 specification constants and functions.
3+
"""
4+
from dataclasses import dataclass
5+
6+
7+
@dataclass(frozen=True)
8+
class ReferenceSpec:
9+
"""
10+
Defines the reference spec version and git path.
11+
"""
12+
13+
git_path: str
14+
version: str
15+
16+
17+
ref_spec_7702 = ReferenceSpec("EIPS/eip-7702.md", "7357ff1f3f176aada6d350d6e42a292a3dec27f4")
18+
19+
20+
@dataclass(frozen=True)
21+
class Spec:
22+
"""
23+
Parameters from the EIP-7702 specifications as defined at
24+
https://eips.ethereum.org/EIPS/eip-7702
25+
"""
26+
27+
SET_CODE_TX_TYPE = 0x04
28+
MAGIC = 0x05
29+
PER_AUTH_BASE_COST = 2500

0 commit comments

Comments
 (0)