github.com/ActiveState/cli@v0.0.0-20240508170324-6801f60cd051/internal/version/version_test.go (about)

     1  package version
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/ActiveState/cli/internal/constants"
     7  	"github.com/stretchr/testify/assert"
     8  	"github.com/stretchr/testify/require"
     9  )
    10  
    11  func TestIsMultiFile(t *testing.T) {
    12  	tests := []struct {
    13  		Name     string
    14  		Version  string
    15  		Expected bool
    16  	}{
    17  		{"current", constants.Version, true},
    18  		{"dev-version", "0.0.0-SHA123456", true},
    19  		{"old-version", "0.28.50-SHA123456", false},
    20  		{"new-version", "0.29.0-SHA123456", true},
    21  	}
    22  
    23  	for _, tt := range tests {
    24  		t.Run(tt.Name, func(t *testing.T) {
    25  			ver, err := ParseStateToolVersion(tt.Version)
    26  			require.NoError(t, err)
    27  
    28  			assert.Equal(t, tt.Expected, IsMultiFileUpdate(ver), "ver=%s", tt.Version)
    29  		})
    30  	}
    31  }