github.com/badrootd/nibiru-cometbft@v0.37.5-0.20240307173500-2a75559eee9b/test/e2e/generator/generate_test.go (about) 1 package main 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 "github.com/stretchr/testify/require" 8 ) 9 10 func TestVersionFinder(t *testing.T) { 11 testCases := []struct { 12 baseVer string 13 tags []string 14 expectedLatest string 15 }{ 16 { 17 baseVer: "v0.34.0", 18 tags: []string{"v0.34.0", "v0.34.1", "v0.34.2", "v0.34.3-rc1", "v0.34.3", "v0.35.0", "v0.35.1", "v0.36.0-rc1"}, 19 expectedLatest: "v0.34.3", 20 }, 21 { 22 baseVer: "v0.38.0-dev", 23 tags: []string{"v0.34.0", "v0.34.1", "v0.34.2", "v0.37.0-rc2", "dev-v0.38.0"}, 24 expectedLatest: "", 25 }, 26 { 27 baseVer: "v0.37.1-rc1", 28 tags: []string{"v0.36.0", "v0.37.0-rc1", "v0.37.0"}, 29 expectedLatest: "v0.37.0", 30 }, 31 { 32 baseVer: "v1.0.0", 33 tags: []string{"v0.34.0", "v0.35.0", "v1.0.0", "v1.0.1"}, 34 expectedLatest: "v1.0.1", 35 }, 36 { 37 baseVer: "v1.1.5", 38 tags: []string{"v0.35.0", "v1.0.0", "v1.0.1", "v1.1.1", "v1.1.2", "v1.1.3", "v1.1.4"}, 39 expectedLatest: "v1.1.4", 40 }, 41 } 42 for _, tc := range testCases { 43 actualLatest, err := findLatestReleaseTag(tc.baseVer, tc.tags) 44 require.NoError(t, err) 45 assert.Equal(t, tc.expectedLatest, actualLatest) 46 } 47 }