def test_validate_proposer_slashing_epoch(genesis_state, keymap, config):
    state = genesis_state
    valid_proposer_slashing = get_valid_proposer_slashing(
        state, keymap, config)
    # Valid
    validate_proposer_slashing_epoch(valid_proposer_slashing,
                                     config.SLOTS_PER_EPOCH)

    header_1 = valid_proposer_slashing.header_1.copy(
        slot=valid_proposer_slashing.header_2.slot +
        2 * config.SLOTS_PER_EPOCH)
    invalid_proposer_slashing = valid_proposer_slashing.copy(header_1=header_1)

    # Invalid
    with pytest.raises(ValidationError):
        validate_proposer_slashing_epoch(invalid_proposer_slashing,
                                         config.SLOTS_PER_EPOCH)
def test_validate_proposer_slashing_epoch(genesis_state, keymap, config):
    state = genesis_state
    valid_proposer_slashing = get_valid_proposer_slashing(
        state, keymap, config)
    # Valid
    validate_proposer_slashing_epoch(valid_proposer_slashing,
                                     config.SLOTS_PER_EPOCH)

    invalid_proposer_slashing = valid_proposer_slashing.transform(
        ("signed_header_1", "message", "slot"),
        valid_proposer_slashing.signed_header_2.message.slot +
        2 * config.SLOTS_PER_EPOCH,
    )

    # Invalid
    with pytest.raises(ValidationError):
        validate_proposer_slashing_epoch(invalid_proposer_slashing,
                                         config.SLOTS_PER_EPOCH)