github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/internal/cli/create_ext_test.go (about) 1 package cli 2 3 import ( 4 "bytes" 5 "testing" 6 7 "github.com/stretchr/testify/assert" 8 "github.com/stretchr/testify/require" 9 "k8s.io/apimachinery/pkg/types" 10 "k8s.io/cli-runtime/pkg/genericclioptions" 11 12 "github.com/tilt-dev/tilt/pkg/apis/core/v1alpha1" 13 ) 14 15 func TestCreateExt(t *testing.T) { 16 f := newServerFixture(t) 17 18 out := bytes.NewBuffer(nil) 19 20 streams := genericclioptions.IOStreams{Out: out} 21 cmd := newCreateExtCmd(streams) 22 c := cmd.register() 23 err := c.Flags().Parse([]string{ 24 "cancel", 25 "--repo", "my-repo", 26 "--path", "my-path", 27 "--", 28 "foo", 29 "--namespace=bar", 30 }) 31 require.NoError(t, err) 32 33 err = cmd.run(f.ctx, c.Flags().Args()) 34 require.NoError(t, err) 35 assert.Contains(t, out.String(), `extension.tilt.dev/cancel created`) 36 37 var obj v1alpha1.Extension 38 err = f.client.Get(f.ctx, types.NamespacedName{Name: "cancel"}, &obj) 39 require.NoError(t, err) 40 41 assert.Equal(t, "my-repo", obj.Spec.RepoName) 42 assert.Equal(t, "my-path", obj.Spec.RepoPath) 43 assert.Equal(t, []string{"foo", "--namespace=bar"}, obj.Spec.Args) 44 }