package testutil import ( "testing" "github.com/prysmaticlabs/prysm/config/params" v1 "github.com/prysmaticlabs/prysm/proto/eth/v1" ethpb "github.com/prysmaticlabs/prysm/proto/prysm/v1alpha1" "github.com/prysmaticlabs/prysm/shared/testutil/require" ) func TestHydrateAttestation(t *testing.T) { a := HydrateAttestation(ðpb.Attestation{}) _, err := a.HashTreeRoot() require.NoError(t, err) require.DeepEqual(t, a.Signature, make([]byte, params.BeaconConfig().BLSSignatureLength)) } func TestHydrateAttestationData(t *testing.T) { d := HydrateAttestationData(ðpb.AttestationData{}) _, err := d.HashTreeRoot() require.NoError(t, err) require.DeepEqual(t, d.BeaconBlockRoot, make([]byte, 32)) require.DeepEqual(t, d.Target.Root, make([]byte, 32)) require.DeepEqual(t, d.Source.Root, make([]byte, 32)) } func TestHydrateV1Attestation(t *testing.T) { a := HydrateV1Attestation(&v1.Attestation{}) _, err := a.HashTreeRoot() require.NoError(t, err) require.DeepEqual(t, a.Signature, make([]byte, params.BeaconConfig().BLSSignatureLength)) } func TestHydrateV1AttestationData(t *testing.T) { d := HydrateV1AttestationData(&v1.AttestationData{}) _, err := d.HashTreeRoot() require.NoError(t, err) require.DeepEqual(t, d.BeaconBlockRoot, make([]byte, 32)) require.DeepEqual(t, d.Target.Root, make([]byte, 32)) require.DeepEqual(t, d.Source.Root, make([]byte, 32)) } func TestHydrateIndexedAttestation(t *testing.T) { a := ðpb.IndexedAttestation{} a = HydrateIndexedAttestation(a) _, err := a.HashTreeRoot() require.NoError(t, err) _, err = a.Data.HashTreeRoot() require.NoError(t, err) } func TestGenerateAttestations_EpochBoundary(t *testing.T) { gs, pk := DeterministicGenesisState(t, 32) _, err := GenerateAttestations(gs, pk, 1, params.BeaconConfig().SlotsPerEpoch, false) require.NoError(t, err) }