Skip to content

Commit 3e0d764

Browse files
committed
Fix StateMachine initialization
1 parent 363dc52 commit 3e0d764

File tree

3 files changed

+18
-5
lines changed

3 files changed

+18
-5
lines changed

eth/beacon/helpers.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import functools
21
from itertools import (
32
repeat,
43
)

eth/beacon/state_machines/base.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,10 +85,10 @@ def __init__(self, chaindb: BaseBeaconChainDB, block: BaseBeaconBlock=None) -> N
8585
self.chaindb = chaindb
8686
if block is None:
8787
# Build a child block of current head
88-
head = self.chaindb.get_canonical_head()
89-
self.block = self.get_block_class()(*block).copy(
90-
slot_number=head.slot_number + 1,
91-
parent_hash=head.hash,
88+
head_block = self.chaindb.get_canonical_head()
89+
self.block = self.get_block_class()(*head_block).copy(
90+
slot_number=head_block.slot_number + 1,
91+
parent_hash=head_block.hash,
9292
)
9393
else:
9494
self.block = self.get_block_class()(*block)

tests/beacon/state_machines/test_state_machines.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,20 @@
99
)
1010

1111

12+
def test_state_machine_canonical(initial_chaindb,
13+
genesis_block,
14+
genesis_crystallized_state,
15+
genesis_active_state):
16+
chaindb = initial_chaindb
17+
sm = SerenityStateMachine(chaindb)
18+
assert sm.block == genesis_block.copy(
19+
slot_number=genesis_block.slot_number + 1,
20+
parent_hash=genesis_block.hash
21+
)
22+
assert sm.crystallized_state == genesis_crystallized_state
23+
assert sm.active_state == genesis_active_state
24+
25+
1226
def test_state_machine(initial_chaindb,
1327
genesis_block,
1428
genesis_crystallized_state):

0 commit comments

Comments
 (0)