prysm-pulse/testing/spectest/shared/common/forkchoice/builder_test.go
Radosław Kapka 879e310332
Native Blocks Ep. 2 - Switch usages to new package (#10885)
* panic in SizeSSZ

* moving slowly

* adapt old code to new interfaces

* return interfaces from factory functions

* replace the rest of WrappedSignedBeaconBlock

* WrappedBeaconBlock

* WrappedBeaconBlockBody

* miscellaneous

* Test_BeaconBlockIsNil

* replace usages of BeaconBlockIsNil

* replace usages of mutator

* fix all build errors

* fix some more issues

* mutator changes

* relax assertions when initializing

* revert changes in object_mapping.go

* allow calling Proto on nil

* Revert "allow calling Proto on nil"

This reverts commit ecc84e455381b03d24aec2fa0fa17bddbec71705.

* modify Copy and Proto methods

* remove unused var

* fix block batch tests

* correct BUILD file

* Error when initializing nil objects

* one more error fix

* add missing comma

* rename alias to blocktest

* add logging

* error when SignedBeaconBlock is nil

* fix last test

* import fix

* broken

* working

* test fixes

* reduce complexity of processPendingBlocks

* simplified
2022-08-02 15:30:46 +00:00

42 lines
1.1 KiB
Go

package forkchoice
import (
"testing"
"github.com/prysmaticlabs/prysm/consensus-types/blocks"
ethpb "github.com/prysmaticlabs/prysm/proto/prysm/v1alpha1"
"github.com/prysmaticlabs/prysm/testing/require"
"github.com/prysmaticlabs/prysm/testing/util"
)
func TestBuilderTick(t *testing.T) {
st, err := util.NewBeaconState()
require.NoError(t, err)
blk, err := blocks.NewSignedBeaconBlock(util.NewBeaconBlock())
require.NoError(t, err)
builder := NewBuilder(t, st, blk)
builder.Tick(t, 10)
require.Equal(t, int64(10), builder.lastTick)
}
func TestBuilderInvalidBlock(t *testing.T) {
st, err := util.NewBeaconState()
require.NoError(t, err)
blk, err := blocks.NewSignedBeaconBlock(util.NewBeaconBlock())
require.NoError(t, err)
builder := NewBuilder(t, st, blk)
builder.InvalidBlock(t, blk)
}
func TestPoWBlock(t *testing.T) {
st, err := util.NewBeaconState()
require.NoError(t, err)
blk, err := blocks.NewSignedBeaconBlock(util.NewBeaconBlock())
require.NoError(t, err)
builder := NewBuilder(t, st, blk)
builder.PoWBlock(&ethpb.PowBlock{BlockHash: []byte{1, 2, 3}})
require.Equal(t, 1, len(builder.execMock.powBlocks))
}