github.com/jenkins-x/jx/v2@v2.1.155/pkg/cmd/opts/kustomize_test.go (about)

     1  // +build unit
     2  
     3  package opts
     4  
     5  import (
     6  	"testing"
     7  
     8  	"github.com/jenkins-x/jx/v2/pkg/versionstream"
     9  	"github.com/stretchr/testify/assert"
    10  )
    11  
    12  var versionTests = []struct {
    13  	currentVersion string
    14  	stableVersion  *versionstream.StableVersion
    15  	supported      bool
    16  }{
    17  	{"3.5.1", &versionstream.StableVersion{Version: "3.5.4", UpperLimit: "3.6.0"}, false},
    18  	{"3.5.4", &versionstream.StableVersion{Version: "3.5.4", UpperLimit: "3.6.0"}, true},
    19  	{"3.6.0", &versionstream.StableVersion{Version: "3.5.4", UpperLimit: "3.6.0"}, false},
    20  }
    21  
    22  func Test_isInstalledKustomizeVersionSupported(t *testing.T) {
    23  	for _, versionTest := range versionTests {
    24  		t.Run(versionTest.currentVersion, func(t *testing.T) {
    25  			supported, err := isInstalledKustomizeVersionSupported(versionTest.currentVersion, versionTest.stableVersion)
    26  			assert.NoError(t, err)
    27  			if versionTest.supported {
    28  				assert.True(t, supported, "%s should be a supported version", versionTest.currentVersion)
    29  			} else {
    30  				assert.False(t, supported, "%s should not be a supported version", versionTest.currentVersion)
    31  			}
    32  		})
    33  	}
    34  }