Skip to content

Commit 83ce6d0

Browse files
authored
Add fork version to compute fork digest test cases (#4376)
1 parent d92c60c commit 83ce6d0

File tree

1 file changed

+79
-20
lines changed

1 file changed

+79
-20
lines changed

tests/core/pyspec/eth2spec/test/fulu/validator/test_compute_fork_digest.py

Lines changed: 79 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -29,108 +29,167 @@ def test_compute_fork_digest(spec):
2929
# Different epochs and blob limits:
3030
{
3131
"epoch": 9,
32+
"fork_version": "0x06000000",
3233
"genesis_validators_root": b"\x00" * 32,
33-
"expected_fork_digest": "0x39f8e7c3",
34+
"expected_fork_digest": "0xab3ae6c8",
3435
},
3536
{
3637
"epoch": 10,
38+
"fork_version": "0x06000000",
3739
"genesis_validators_root": b"\x00" * 32,
38-
"expected_fork_digest": "0x39f8e7c3",
40+
"expected_fork_digest": "0xab3ae6c8",
3941
},
4042
{
4143
"epoch": 11,
44+
"fork_version": "0x06000000",
4245
"genesis_validators_root": b"\x00" * 32,
43-
"expected_fork_digest": "0x39f8e7c3",
46+
"expected_fork_digest": "0xab3ae6c8",
4447
},
4548
{
4649
"epoch": 99,
50+
"fork_version": "0x06000000",
4751
"genesis_validators_root": b"\x00" * 32,
48-
"expected_fork_digest": "0x39f8e7c3",
52+
"expected_fork_digest": "0xab3ae6c8",
4953
},
5054
{
5155
"epoch": 100,
56+
"fork_version": "0x06000000",
5257
"genesis_validators_root": b"\x00" * 32,
53-
"expected_fork_digest": "0x44a571e8",
58+
"expected_fork_digest": "0xdf67557b",
5459
},
5560
{
5661
"epoch": 101,
62+
"fork_version": "0x06000000",
5763
"genesis_validators_root": b"\x00" * 32,
58-
"expected_fork_digest": "0x44a571e8",
64+
"expected_fork_digest": "0xdf67557b",
5965
},
6066
{
6167
"epoch": 150,
68+
"fork_version": "0x06000000",
6269
"genesis_validators_root": b"\x00" * 32,
63-
"expected_fork_digest": "0x1171afca",
70+
"expected_fork_digest": "0x8ab38b59",
6471
},
6572
{
6673
"epoch": 199,
74+
"fork_version": "0x06000000",
6775
"genesis_validators_root": b"\x00" * 32,
68-
"expected_fork_digest": "0x1171afca",
76+
"expected_fork_digest": "0x8ab38b59",
6977
},
7078
{
7179
"epoch": 200,
80+
"fork_version": "0x06000000",
7281
"genesis_validators_root": b"\x00" * 32,
73-
"expected_fork_digest": "0x427a30ab",
82+
"expected_fork_digest": "0xd9b81438",
7483
},
7584
{
7685
"epoch": 201,
86+
"fork_version": "0x06000000",
7787
"genesis_validators_root": b"\x00" * 32,
78-
"expected_fork_digest": "0x427a30ab",
88+
"expected_fork_digest": "0xd9b81438",
7989
},
8090
{
8191
"epoch": 250,
92+
"fork_version": "0x06000000",
8293
"genesis_validators_root": b"\x00" * 32,
83-
"expected_fork_digest": "0xd5310ef1",
94+
"expected_fork_digest": "0x4ef32a62",
8495
},
8596
{
8697
"epoch": 299,
98+
"fork_version": "0x06000000",
8799
"genesis_validators_root": b"\x00" * 32,
88-
"expected_fork_digest": "0xd5310ef1",
100+
"expected_fork_digest": "0x4ef32a62",
89101
},
90102
{
91103
"epoch": 300,
104+
"fork_version": "0x06000000",
92105
"genesis_validators_root": b"\x00" * 32,
93-
"expected_fork_digest": "0x51d229f7",
106+
"expected_fork_digest": "0xca100d64",
94107
},
95108
{
96109
"epoch": 301,
110+
"fork_version": "0x06000000",
97111
"genesis_validators_root": b"\x00" * 32,
98-
"expected_fork_digest": "0x51d229f7",
112+
"expected_fork_digest": "0xca100d64",
99113
},
100114
# Different genesis validators roots:
101115
{
102116
"epoch": 9,
117+
"fork_version": "0x06000000",
103118
"genesis_validators_root": b"\x01" * 32,
104-
"expected_fork_digest": "0xe41615ba",
119+
"expected_fork_digest": "0x89671111",
105120
},
106121
{
107122
"epoch": 9,
123+
"fork_version": "0x06000000",
108124
"genesis_validators_root": b"\x02" * 32,
109-
"expected_fork_digest": "0x46790ef9",
125+
"expected_fork_digest": "0xf49b0e24",
110126
},
111127
{
112128
"epoch": 9,
129+
"fork_version": "0x06000000",
113130
"genesis_validators_root": b"\x03" * 32,
114-
"expected_fork_digest": "0xa072c2f5",
131+
"expected_fork_digest": "0x86544e4f",
115132
},
116133
{
117134
"epoch": 100,
135+
"fork_version": "0x06000000",
118136
"genesis_validators_root": b"\x01" * 32,
119-
"expected_fork_digest": "0xbfe98545",
137+
"expected_fork_digest": "0xfd3aa2a2",
120138
},
121139
{
122140
"epoch": 100,
141+
"fork_version": "0x06000000",
123142
"genesis_validators_root": b"\x02" * 32,
124-
"expected_fork_digest": "0x9b7e4788",
143+
"expected_fork_digest": "0x80c6bd97",
125144
},
126145
{
127146
"epoch": 100,
147+
"fork_version": "0x06000000",
128148
"genesis_validators_root": b"\x03" * 32,
129-
"expected_fork_digest": "0x8b5ce4af",
149+
"expected_fork_digest": "0xf209fdfc",
150+
},
151+
# Different fork versions
152+
{
153+
"epoch": 9,
154+
"fork_version": "0x06000001",
155+
"genesis_validators_root": b"\x00" * 32,
156+
"expected_fork_digest": "0x30f8c25b",
157+
},
158+
{
159+
"epoch": 9,
160+
"fork_version": "0x07000000",
161+
"genesis_validators_root": b"\x00" * 32,
162+
"expected_fork_digest": "0x0432f5a9",
163+
},
164+
{
165+
"epoch": 9,
166+
"fork_version": "0x07000001",
167+
"genesis_validators_root": b"\x00" * 32,
168+
"expected_fork_digest": "0x6e69a671",
169+
},
170+
{
171+
"epoch": 100,
172+
"fork_version": "0x06000001",
173+
"genesis_validators_root": b"\x00" * 32,
174+
"expected_fork_digest": "0x44a571e8",
175+
},
176+
{
177+
"epoch": 100,
178+
"fork_version": "0x07000000",
179+
"genesis_validators_root": b"\x00" * 32,
180+
"expected_fork_digest": "0x706f461a",
181+
},
182+
{
183+
"epoch": 100,
184+
"fork_version": "0x07000001",
185+
"genesis_validators_root": b"\x00" * 32,
186+
"expected_fork_digest": "0x1a3415c2",
130187
},
131188
]
132189

133190
for case in test_cases:
191+
# Override function to return fork version in test case
192+
spec.compute_fork_version = lambda _: case["fork_version"]
134193
# Compute the fork digest given the inputs from the test case
135194
fork_digest = spec.compute_fork_digest(case["genesis_validators_root"], case["epoch"])
136195
# Check that the computed fork digest matches our expected value

0 commit comments

Comments
 (0)