github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/internal/cli/create_repo_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 TestCreateRepo(t *testing.T) {
    16  	f := newServerFixture(t)
    17  
    18  	out := bytes.NewBuffer(nil)
    19  	streams := genericclioptions.IOStreams{Out: out}
    20  
    21  	cmd := newCreateRepoCmd(streams)
    22  	c := cmd.register()
    23  	err := c.Flags().Parse([]string{
    24  		"default", "https://github.com/tilt-dev/tilt-extensions",
    25  		"--ref", "FAKE_SHA",
    26  	})
    27  	require.NoError(t, err)
    28  
    29  	err = cmd.run(f.ctx, c.Flags().Args())
    30  	require.NoError(t, err)
    31  	assert.Contains(t, out.String(), `extensionrepo.tilt.dev/default created`)
    32  
    33  	var obj v1alpha1.ExtensionRepo
    34  	err = f.client.Get(f.ctx, types.NamespacedName{Name: "default"}, &obj)
    35  	require.NoError(t, err)
    36  
    37  	assert.Equal(t, "https://github.com/tilt-dev/tilt-extensions", obj.Spec.URL)
    38  	assert.Equal(t, "FAKE_SHA", obj.Spec.Ref)
    39  }