@@ -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