wormhole/node/pkg/publicrpc/publicrpcserver_test.go

66 lines
1.6 KiB
Go

package publicrpc
import (
"context"
"testing"
publicrpcv1 "github.com/certusone/wormhole/node/pkg/proto/publicrpc/v1"
"github.com/stretchr/testify/assert"
"go.uber.org/zap"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
)
func TestGetSignedVAANoMessage(t *testing.T) {
msg := publicrpcv1.GetSignedVAARequest{}
ctx := context.Background()
logger, _ := zap.NewProduction()
server := &PublicrpcServer{logger: logger}
resp, err := server.GetSignedVAA(ctx, &msg)
assert.Nil(t, resp)
expected_err := status.Error(codes.InvalidArgument, "no message ID specified")
assert.Equal(t, expected_err, err)
}
func TestGetSignedVAANoAddress(t *testing.T) {
msg := publicrpcv1.GetSignedVAARequest{MessageId: &publicrpcv1.MessageID{}}
ctx := context.Background()
logger, _ := zap.NewProduction()
server := &PublicrpcServer{logger: logger}
resp, err := server.GetSignedVAA(ctx, &msg)
assert.Nil(t, resp)
expected_err := status.Error(codes.InvalidArgument, "address must be 32 bytes")
assert.Equal(t, expected_err, err)
}
func TestGetSignedVAABadAddress(t *testing.T) {
chainID := uint32(1)
emitterAddr := "AAAA"
seq := uint64(1)
msg := publicrpcv1.GetSignedVAARequest{
MessageId: &publicrpcv1.MessageID{
EmitterChain: publicrpcv1.ChainID(chainID),
EmitterAddress: emitterAddr,
Sequence: seq,
},
}
ctx := context.Background()
logger, _ := zap.NewProduction()
server := &PublicrpcServer{logger: logger}
resp, err := server.GetSignedVAA(ctx, &msg)
assert.Nil(t, resp)
expected_err := status.Error(codes.InvalidArgument, "address must be 32 bytes")
assert.Equal(t, expected_err, err)
}