mirror of
https://github.com/psviderski/uncloud.git
synced 2026-10-07 13:49:02 +00:00
39 lines
1.2 KiB
Go
39 lines
1.2 KiB
Go
package machine
|
|
|
|
import (
|
|
"context"
|
|
"testing"
|
|
|
|
"github.com/psviderski/uncloud/api/pb"
|
|
"github.com/stretchr/testify/require"
|
|
"google.golang.org/grpc/codes"
|
|
"google.golang.org/grpc/status"
|
|
)
|
|
|
|
func TestInitCluster_InvalidMachineName(t *testing.T) {
|
|
t.Parallel()
|
|
|
|
for _, name := range []string{"VPS1", "rr", "nearest", "c337f00600de51ef4375c9a9a267dba5"} {
|
|
// Invalid names must be rejected before initializing cluster state.
|
|
m := &Machine{state: &State{}}
|
|
|
|
resp, err := m.InitCluster(context.Background(), &pb.InitClusterRequest{MachineName: name})
|
|
require.Nil(t, resp)
|
|
require.Equal(t, codes.InvalidArgument, status.Code(err))
|
|
require.ErrorContains(t, err, "invalid machine name")
|
|
}
|
|
}
|
|
|
|
func TestUpdateMachine_InvalidName(t *testing.T) {
|
|
t.Parallel()
|
|
|
|
for _, name := range []string{"", "VPS1", "worker.example", "rr", "nearest", "c337f00600de51ef4375c9a9a267dba5"} {
|
|
m := &Machine{state: &State{ID: "machine-id", Name: "worker"}}
|
|
resp, err := m.UpdateMachine(context.Background(), &pb.UpdateMachineRequest{Name: &name})
|
|
require.Nil(t, resp)
|
|
require.Equal(t, codes.InvalidArgument, status.Code(err))
|
|
require.ErrorContains(t, err, "invalid machine name")
|
|
require.Equal(t, "worker", m.state.Name)
|
|
}
|
|
}
|