mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2024-12-26 13:18:57 +00:00
149d3b84fa
* Check attestation target checkpoint is within current or previous epoch * reject bad att where slot does not match target * Add test, reduce redundant check
26 lines
865 B
Go
26 lines
865 B
Go
package blockchain
|
|
|
|
import (
|
|
"context"
|
|
"testing"
|
|
"time"
|
|
|
|
ethpb "github.com/prysmaticlabs/ethereumapis/eth/v1alpha1"
|
|
"github.com/prysmaticlabs/prysm/beacon-chain/core/helpers"
|
|
testDB "github.com/prysmaticlabs/prysm/beacon-chain/db/testing"
|
|
"github.com/prysmaticlabs/prysm/shared/params"
|
|
"github.com/prysmaticlabs/prysm/shared/testutil/require"
|
|
)
|
|
|
|
func TestAttestationCheckPtState_FarFutureSlot(t *testing.T) {
|
|
helpers.ClearCache()
|
|
db, sc := testDB.SetupDB(t)
|
|
|
|
chainService := setupBeaconChain(t, db, sc)
|
|
chainService.genesisTime = time.Now()
|
|
|
|
e := helpers.MaxSlotBuffer/params.BeaconConfig().SlotsPerEpoch + 1
|
|
_, err := chainService.AttestationPreState(context.Background(), ðpb.Attestation{Data: ðpb.AttestationData{Target: ðpb.Checkpoint{Epoch: e}}})
|
|
require.ErrorContains(t, "exceeds max allowed value relative to the local clock", err)
|
|
}
|