@@ -35,38 +35,71 @@ func Test_GetReleaseDetails(t *testing.T) {
35
35
err string
36
36
}{
37
37
{
38
- name : "Correct RELEASE_TAG and RELEASE_DATE are set" ,
38
+ name : "Correct RELEASE_TAG and RELEASE_DATE are set for alpha" ,
39
+ releaseTag : "v1.7.0-alpha.0" ,
40
+ releaseDate : "2024-04-16" ,
41
+ want : releaseDetails {
42
+ ReleaseDate : "Tuesday, 16th April 2024" ,
43
+ ReleaseTag : "v1.7.0" ,
44
+ PreReleaseTag : "v1.7.0-alpha.0" ,
45
+ ReleaseLink : "https://github.com/kubernetes-sigs/cluster-api/tree/main/docs/release/releases/release-1.7.md#timeline" ,
46
+ ReleaseNotesLink : "https://github.com/kubernetes-sigs/cluster-api/releases/tag/v1.7.0-alpha.0" ,
47
+ },
48
+ expectErr : false ,
49
+ },
50
+ {
51
+ name : "Correct RELEASE_TAG and RELEASE_DATE are set for beta" ,
39
52
releaseTag : "v1.7.0-beta.0" ,
40
53
releaseDate : "2024-04-16" ,
41
54
want : releaseDetails {
42
55
ReleaseDate : "Tuesday, 16th April 2024" ,
43
56
ReleaseTag : "v1.7.0" ,
44
- BetaTag : "v1.7.0-beta.0" ,
57
+ PreReleaseTag : "v1.7.0-beta.0" ,
45
58
ReleaseLink : "https://github.com/kubernetes-sigs/cluster-api/tree/main/docs/release/releases/release-1.7.md#timeline" ,
46
59
ReleaseNotesLink : "https://github.com/kubernetes-sigs/cluster-api/releases/tag/v1.7.0-beta.0" ,
47
60
},
48
61
expectErr : false ,
49
62
},
50
63
{
51
- name : "RELEASE_TAG is not in the format ^v\\ d+\\ .\\ d+\\ .\\ d+-beta\\ .\\ d+$" ,
64
+ name : "Correct RELEASE_TAG and RELEASE_DATE are set for rc" ,
65
+ releaseTag : "v1.7.0-rc.0" ,
66
+ releaseDate : "2024-04-16" ,
67
+ want : releaseDetails {
68
+ ReleaseDate : "Tuesday, 16th April 2024" ,
69
+ ReleaseTag : "v1.7.0" ,
70
+ PreReleaseTag : "v1.7.0-rc.0" ,
71
+ ReleaseLink : "https://github.com/kubernetes-sigs/cluster-api/tree/main/docs/release/releases/release-1.7.md#timeline" ,
72
+ ReleaseNotesLink : "https://github.com/kubernetes-sigs/cluster-api/releases/tag/v1.7.0-rc.0" ,
73
+ },
74
+ expectErr : false ,
75
+ },
76
+ {
77
+ name : "RELEASE_TAG is not in the correct format" ,
52
78
releaseTag : "v1.7.0.1" ,
53
79
releaseDate : "2024-04-16" ,
54
80
expectErr : true ,
55
- err : "release tag must be in format `^v\\ d+\\ .\\ d+\\ .\\ d+-beta\\ .\\ d+$` e.g. v1.7.0-beta.0" ,
81
+ err : "release tag must be in format `^v\\ d+\\ .\\ d+\\ .\\ d+-(alpha| beta|rc) \\ .\\ d+$` e.g. v1.7.0-beta.0" ,
56
82
},
57
83
{
58
84
name : "RELEASE_TAG does not have prefix 'v' in its semver" ,
59
85
releaseTag : "1.7.0-beta.0" ,
60
86
releaseDate : "2024-04-16" ,
61
87
expectErr : true ,
62
- err : "release tag must be in format `^v\\ d+\\ .\\ d+\\ .\\ d+-beta\\ .\\ d+$` e.g. v1.7.0-beta.0" ,
88
+ err : "release tag must be in format `^v\\ d+\\ .\\ d+\\ .\\ d+-(alpha| beta|rc) \\ .\\ d+$` e.g. v1.7.0-beta.0" ,
63
89
},
64
90
{
65
91
name : "RELEASE_TAG contains invalid Major.Minor.Patch SemVer" ,
66
92
releaseTag : "v1.x.0-beta.0" ,
67
93
releaseDate : "2024-04-16" ,
68
94
expectErr : true ,
69
- err : "release tag must be in format `^v\\ d+\\ .\\ d+\\ .\\ d+-beta\\ .\\ d+$` e.g. v1.7.0-beta.0" ,
95
+ err : "release tag must be in format `^v\\ d+\\ .\\ d+\\ .\\ d+-(alpha|beta|rc)\\ .\\ d+$` e.g. v1.7.0-beta.0" ,
96
+ },
97
+ {
98
+ name : "RELEASE_TAG contains unsupported pre-release type" ,
99
+ releaseTag : "v1.7.0-gamma.0" ,
100
+ releaseDate : "2024-04-16" ,
101
+ expectErr : true ,
102
+ err : "release tag must be in format `^v\\ d+\\ .\\ d+\\ .\\ d+-(alpha|beta|rc)\\ .\\ d+$` e.g. v1.7.0-beta.0" ,
70
103
},
71
104
{
72
105
name : "invalid yyyy-dd-mm RELEASE_DATE entered" ,
@@ -104,7 +137,7 @@ func Test_GetReleaseDetails(t *testing.T) {
104
137
} else {
105
138
g .Expect (got .ReleaseDate ).To (Equal (tt .want .ReleaseDate ))
106
139
g .Expect (got .ReleaseTag ).To (Equal (tt .want .ReleaseTag ))
107
- g .Expect (got .BetaTag ).To (Equal (tt .want .BetaTag ))
140
+ g .Expect (got .PreReleaseTag ).To (Equal (tt .want .PreReleaseTag ))
108
141
g .Expect (got .ReleaseLink ).To (Equal (tt .want .ReleaseLink ))
109
142
}
110
143
})
0 commit comments