示例#1
0
def test_validate_validator_minimum_lifespan(genesis_state, keymap,
                                             current_epoch, activation_epoch,
                                             slots_per_epoch,
                                             persistent_committee_period,
                                             success):
    state = genesis_state.copy(slot=get_epoch_start_slot(
        current_epoch, slots_per_epoch), )
    validator_index = 0
    validator = state.validators[validator_index].copy(
        activation_epoch=activation_epoch, )
    state = state.update_validator(validator_index, validator)

    if success:
        _validate_validator_minimum_lifespan(
            validator,
            state.current_epoch(slots_per_epoch),
            persistent_committee_period,
        )
    else:
        with pytest.raises(ValidationError):
            _validate_validator_minimum_lifespan(
                validator,
                state.current_epoch(slots_per_epoch),
                persistent_committee_period,
            )
def test_validate_validator_minimum_lifespan(
    genesis_state,
    keymap,
    current_epoch,
    activation_epoch,
    slots_per_epoch,
    persistent_committee_period,
    success,
):
    state = genesis_state.set(
        "slot", compute_start_slot_at_epoch(current_epoch, slots_per_epoch))
    validator_index = 0
    validator = state.validators[validator_index].set("activation_epoch",
                                                      activation_epoch)
    state = state.transform(["validators", validator_index], validator)

    if success:
        _validate_validator_minimum_lifespan(
            validator, state.current_epoch(slots_per_epoch),
            persistent_committee_period)
    else:
        with pytest.raises(ValidationError):
            _validate_validator_minimum_lifespan(
                validator,
                state.current_epoch(slots_per_epoch),
                persistent_committee_period,
            )