package cli import ( "os" "testing" "github.com/spf13/cobra" "github.com/stretchr/testify/assert" "github.com/oam-dev/kubevela/apis/types" cmdutil "github.com/oam-dev/kubevela/pkg/utils/util" "github.com/oam-dev/kubevela/references/common" ) func TestNewTraitsCommandPersistentPreRunE(t *testing.T) { io := cmdutil.IOStreams{In: os.Stdin, Out: os.Stdout, ErrOut: os.Stderr} fakeC := types.Args{} cmd := NewTraitsCommand(fakeC, io) assert.Nil(t, cmd.PersistentPreRunE(new(cobra.Command), []string{})) } func TestTraitsAppliedToAllWorkloads(t *testing.T) { trait := types.Capability{ Name: "route", CrdName: "routes.oam.dev", AppliesTo: []string{"*"}, } workloads := []types.Capability{ { Name: "deployment", CrdName: "deployments.apps", }, { Name: "clonset", CrdName: "clonsets.alibaba", }, } assert.Equal(t, []string{"*"}, common.ConvertApplyTo(trait.AppliesTo, workloads)) }