github.com/olli-ai/jx/v2@v2.0.400-0.20210921045218-14731b4dd448/pkg/cmd/step/step_wait_for_chart_test.go (about)

     1  // +build unit
     2  
     3  package step
     4  
     5  import (
     6  	"testing"
     7  
     8  	"github.com/olli-ai/jx/v2/pkg/cmd/opts"
     9  
    10  	"github.com/olli-ai/jx/v2/pkg/cmd/opts/step"
    11  
    12  	"github.com/google/uuid"
    13  	cmd_test "github.com/olli-ai/jx/v2/pkg/cmd/clients/mocks"
    14  	helm_test "github.com/olli-ai/jx/v2/pkg/helm/mocks"
    15  	"github.com/olli-ai/jx/v2/pkg/kube"
    16  	"k8s.io/helm/pkg/proto/hapi/chart"
    17  
    18  	"github.com/stretchr/testify/assert"
    19  )
    20  
    21  func TestStepWaitForChart(t *testing.T) {
    22  	nameUUID, err := uuid.NewUUID()
    23  	assert.NoError(t, err)
    24  
    25  	name := nameUUID.String()
    26  	version := "0.0.1"
    27  
    28  	helmer := helm_test.NewMockHelmer()
    29  	helm_test.StubFetchChart(name, "", kube.DefaultChartMuseumURL, &chart.Chart{
    30  		Metadata: &chart.Metadata{
    31  			Name:    name,
    32  			Version: version,
    33  		},
    34  	}, helmer)
    35  
    36  	assert.NoError(t, err)
    37  
    38  	mockFactory := cmd_test.NewMockFactory()
    39  
    40  	commonOpts := opts.NewCommonOptionsWithFactory(mockFactory)
    41  	commonOpts.SetHelm(helmer)
    42  	options := &WaitForChartOptions{
    43  		ChartName:    name,
    44  		ChartVersion: version,
    45  		ChartRepo:    kube.DefaultChartMuseumURL,
    46  		StepOptions: &step.StepOptions{
    47  			CommonOptions: &commonOpts,
    48  		},
    49  	}
    50  
    51  	err = options.Run()
    52  	assert.NoError(t, err)
    53  }