voluntary exit test case: invalid index
This commit is contained in:
parent
17d057e503
commit
636a45a415
|
@ -23,7 +23,6 @@ def run_voluntary_exit_processing(state, voluntary_exit, valid=True):
|
||||||
If ``valid == False``, run expecting ``AssertionError``
|
If ``valid == False``, run expecting ``AssertionError``
|
||||||
"""
|
"""
|
||||||
validator_index = voluntary_exit.validator_index
|
validator_index = voluntary_exit.validator_index
|
||||||
pre_exit_epoch = state.validator_registry[validator_index].exit_epoch
|
|
||||||
|
|
||||||
yield 'pre', state
|
yield 'pre', state
|
||||||
yield 'voluntary_exit', voluntary_exit
|
yield 'voluntary_exit', voluntary_exit
|
||||||
|
@ -33,6 +32,8 @@ def run_voluntary_exit_processing(state, voluntary_exit, valid=True):
|
||||||
yield 'post', None
|
yield 'post', None
|
||||||
return
|
return
|
||||||
|
|
||||||
|
pre_exit_epoch = state.validator_registry[validator_index].exit_epoch
|
||||||
|
|
||||||
process_voluntary_exit(state, voluntary_exit)
|
process_voluntary_exit(state, voluntary_exit)
|
||||||
|
|
||||||
yield 'post', state
|
yield 'post', state
|
||||||
|
@ -107,6 +108,26 @@ def test_success_exit_queue(state):
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@spec_state_test
|
||||||
|
def test_validator_invalid_validator_index(state):
|
||||||
|
# move state forward PERSISTENT_COMMITTEE_PERIOD epochs to allow for exit
|
||||||
|
state.slot += spec.PERSISTENT_COMMITTEE_PERIOD * spec.SLOTS_PER_EPOCH
|
||||||
|
|
||||||
|
current_epoch = get_current_epoch(state)
|
||||||
|
validator_index = get_active_validator_indices(state, current_epoch)[0]
|
||||||
|
privkey = pubkey_to_privkey[state.validator_registry[validator_index].pubkey]
|
||||||
|
|
||||||
|
voluntary_exit = build_voluntary_exit(
|
||||||
|
state,
|
||||||
|
current_epoch,
|
||||||
|
validator_index,
|
||||||
|
privkey,
|
||||||
|
)
|
||||||
|
voluntary_exit.validator_index = len(state.validator_registry)
|
||||||
|
|
||||||
|
yield from run_voluntary_exit_processing(state, voluntary_exit, False)
|
||||||
|
|
||||||
|
|
||||||
@spec_state_test
|
@spec_state_test
|
||||||
def test_validator_not_active(state):
|
def test_validator_not_active(state):
|
||||||
current_epoch = get_current_epoch(state)
|
current_epoch = get_current_epoch(state)
|
||||||
|
|
Loading…
Reference in New Issue