mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2024-12-22 19:40:37 +00:00
f602a44bee
fixing broken test (#12673)
133 lines
4.5 KiB
Go
133 lines
4.5 KiB
Go
package migration
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/prysmaticlabs/go-bitfield"
|
|
enginev1 "github.com/prysmaticlabs/prysm/v4/proto/engine/v1"
|
|
ethpbv1 "github.com/prysmaticlabs/prysm/v4/proto/eth/v1"
|
|
ethpbv2 "github.com/prysmaticlabs/prysm/v4/proto/eth/v2"
|
|
"github.com/prysmaticlabs/prysm/v4/testing/assert"
|
|
"github.com/prysmaticlabs/prysm/v4/testing/require"
|
|
"github.com/prysmaticlabs/prysm/v4/testing/util"
|
|
)
|
|
|
|
func Test_AltairToV1Alpha1SignedBlock(t *testing.T) {
|
|
v2Block := util.HydrateV2AltairSignedBeaconBlock(ðpbv2.SignedBeaconBlockAltair{})
|
|
v2Block.Message.Slot = slot
|
|
v2Block.Message.ProposerIndex = validatorIndex
|
|
v2Block.Message.ParentRoot = parentRoot
|
|
v2Block.Message.StateRoot = stateRoot
|
|
v2Block.Message.Body.RandaoReveal = randaoReveal
|
|
v2Block.Message.Body.Eth1Data = ðpbv1.Eth1Data{
|
|
DepositRoot: depositRoot,
|
|
DepositCount: depositCount,
|
|
BlockHash: blockHash,
|
|
}
|
|
syncCommitteeBits := bitfield.NewBitvector512()
|
|
syncCommitteeBits.SetBitAt(100, true)
|
|
v2Block.Message.Body.SyncAggregate = ðpbv1.SyncAggregate{
|
|
SyncCommitteeBits: syncCommitteeBits,
|
|
SyncCommitteeSignature: signature,
|
|
}
|
|
v2Block.Signature = signature
|
|
|
|
alphaBlock, err := AltairToV1Alpha1SignedBlock(v2Block)
|
|
require.NoError(t, err)
|
|
alphaRoot, err := alphaBlock.HashTreeRoot()
|
|
require.NoError(t, err)
|
|
v2Root, err := v2Block.HashTreeRoot()
|
|
require.NoError(t, err)
|
|
assert.DeepEqual(t, v2Root, alphaRoot)
|
|
}
|
|
|
|
func Test_BellatrixToV1Alpha1SignedBlock(t *testing.T) {
|
|
v2Block := util.HydrateV2BellatrixSignedBeaconBlock(ðpbv2.SignedBeaconBlockBellatrix{})
|
|
v2Block.Message.Slot = slot
|
|
v2Block.Message.ProposerIndex = validatorIndex
|
|
v2Block.Message.ParentRoot = parentRoot
|
|
v2Block.Message.StateRoot = stateRoot
|
|
v2Block.Message.Body.RandaoReveal = randaoReveal
|
|
v2Block.Message.Body.Eth1Data = ðpbv1.Eth1Data{
|
|
DepositRoot: depositRoot,
|
|
DepositCount: depositCount,
|
|
BlockHash: blockHash,
|
|
}
|
|
syncCommitteeBits := bitfield.NewBitvector512()
|
|
syncCommitteeBits.SetBitAt(100, true)
|
|
v2Block.Message.Body.SyncAggregate = ðpbv1.SyncAggregate{
|
|
SyncCommitteeBits: syncCommitteeBits,
|
|
SyncCommitteeSignature: signature,
|
|
}
|
|
v2Block.Message.Body.ExecutionPayload = &enginev1.ExecutionPayload{
|
|
ParentHash: parentHash,
|
|
FeeRecipient: feeRecipient,
|
|
StateRoot: stateRoot,
|
|
ReceiptsRoot: receiptsRoot,
|
|
LogsBloom: logsBloom,
|
|
PrevRandao: prevRandao,
|
|
BlockNumber: blockNumber,
|
|
GasLimit: gasLimit,
|
|
GasUsed: gasUsed,
|
|
Timestamp: timestamp,
|
|
ExtraData: extraData,
|
|
BaseFeePerGas: baseFeePerGas,
|
|
BlockHash: blockHash,
|
|
Transactions: [][]byte{[]byte("transaction1"), []byte("transaction2")},
|
|
}
|
|
v2Block.Signature = signature
|
|
|
|
alphaBlock, err := BellatrixToV1Alpha1SignedBlock(v2Block)
|
|
require.NoError(t, err)
|
|
alphaRoot, err := alphaBlock.HashTreeRoot()
|
|
require.NoError(t, err)
|
|
v2Root, err := v2Block.HashTreeRoot()
|
|
require.NoError(t, err)
|
|
assert.DeepEqual(t, v2Root, alphaRoot)
|
|
}
|
|
|
|
func Test_BlindedBellatrixToV1Alpha1SignedBlock(t *testing.T) {
|
|
v2Block := util.HydrateV2SignedBlindedBeaconBlockBellatrix(ðpbv2.SignedBlindedBeaconBlockBellatrix{})
|
|
v2Block.Message.Slot = slot
|
|
v2Block.Message.ProposerIndex = validatorIndex
|
|
v2Block.Message.ParentRoot = parentRoot
|
|
v2Block.Message.StateRoot = stateRoot
|
|
v2Block.Message.Body.RandaoReveal = randaoReveal
|
|
v2Block.Message.Body.Eth1Data = ðpbv1.Eth1Data{
|
|
DepositRoot: depositRoot,
|
|
DepositCount: depositCount,
|
|
BlockHash: blockHash,
|
|
}
|
|
syncCommitteeBits := bitfield.NewBitvector512()
|
|
syncCommitteeBits.SetBitAt(100, true)
|
|
v2Block.Message.Body.SyncAggregate = ðpbv1.SyncAggregate{
|
|
SyncCommitteeBits: syncCommitteeBits,
|
|
SyncCommitteeSignature: signature,
|
|
}
|
|
v2Block.Message.Body.ExecutionPayloadHeader = &enginev1.ExecutionPayloadHeader{
|
|
ParentHash: parentHash,
|
|
FeeRecipient: feeRecipient,
|
|
StateRoot: stateRoot,
|
|
ReceiptsRoot: receiptsRoot,
|
|
LogsBloom: logsBloom,
|
|
PrevRandao: prevRandao,
|
|
BlockNumber: blockNumber,
|
|
GasLimit: gasLimit,
|
|
GasUsed: gasUsed,
|
|
Timestamp: timestamp,
|
|
ExtraData: extraData,
|
|
BaseFeePerGas: baseFeePerGas,
|
|
BlockHash: blockHash,
|
|
TransactionsRoot: transactionsRoot,
|
|
}
|
|
v2Block.Signature = signature
|
|
|
|
alphaBlock, err := BlindedBellatrixToV1Alpha1SignedBlock(v2Block)
|
|
require.NoError(t, err)
|
|
alphaRoot, err := alphaBlock.HashTreeRoot()
|
|
require.NoError(t, err)
|
|
v2Root, err := v2Block.HashTreeRoot()
|
|
require.NoError(t, err)
|
|
assert.DeepEqual(t, v2Root, alphaRoot)
|
|
}
|