collective_beacon_test.go 1.23 KiB
package collectiveBeacon
import (
"testing"
"github.com/iotaledger/goshimmer/packages/binary/drng/payload/header"
"github.com/iotaledger/goshimmer/packages/binary/marshalutil"
"github.com/stretchr/testify/require"
)
func TestParse(t *testing.T) {
header := header.New(header.CollectiveBeaconType(), 0)
payload := New(header.Instance(),
0,
[]byte("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"), // prevSignature
[]byte("BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"), // signature
[]byte("CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC")) // distributed PK
bytes := payload.Bytes()
marshalUtil := marshalutil.New(bytes)
parsedPayload, err := Parse(marshalUtil)
require.NoError(t, err)
require.Equal(t, payload.SubType(), parsedPayload.SubType())
require.Equal(t, payload.Instance(), parsedPayload.Instance())
require.Equal(t, payload.Round(), parsedPayload.Round())
require.Equal(t, payload.PrevSignature(), parsedPayload.PrevSignature())
require.Equal(t, payload.Signature(), parsedPayload.Signature())
require.Equal(t, payload.DistributedPK(), parsedPayload.DistributedPK())
}