@@ -102,24 +102,75 @@ func TestAdminSentinelVersions_CreateDelete(t *testing.T) {
102
102
client := testClient (t )
103
103
ctx := context .Background ()
104
104
version := createAdminSentinelVersion ()
105
+ url := "https://www.hashicorp.com"
106
+ amd64Sha := String (genSha (t ))
105
107
106
- t .Run ("with valid options including archs" , func (t * testing.T ) {
108
+ t .Run ("with valid options including top level url & sha and archs" , func (t * testing.T ) {
107
109
opts := AdminSentinelVersionCreateOptions {
108
110
Version : version ,
109
111
Deprecated : Bool (true ),
110
112
DeprecatedReason : String ("Test Reason" ),
111
113
Official : Bool (false ),
112
114
Enabled : Bool (false ),
113
115
Beta : Bool (false ),
116
+ URL : url ,
117
+ SHA : * amd64Sha ,
114
118
Archs : []* ToolVersionArchitecture {
115
119
{
116
- URL : "https://www.hashicorp.com" ,
120
+ URL : url ,
121
+ Sha : * amd64Sha ,
122
+ OS : linux ,
123
+ Arch : amd64 ,
124
+ },
125
+ {
126
+ URL : url ,
117
127
Sha : * String (genSha (t )),
118
128
OS : linux ,
129
+ Arch : arm64 ,
130
+ }},
131
+ }
132
+ sv , err := client .Admin .SentinelVersions .Create (ctx , opts )
133
+ require .NoError (t , err )
134
+
135
+ defer func () {
136
+ deleteErr := client .Admin .SentinelVersions .Delete (ctx , sv .ID )
137
+ require .NoError (t , deleteErr )
138
+ }()
139
+
140
+ assert .Equal (t , opts .Version , sv .Version )
141
+ assert .Equal (t , * opts .Official , sv .Official )
142
+ assert .Equal (t , * opts .Deprecated , sv .Deprecated )
143
+ assert .Equal (t , * opts .DeprecatedReason , * sv .DeprecatedReason )
144
+ assert .Equal (t , * opts .Enabled , sv .Enabled )
145
+ assert .Equal (t , * opts .Beta , sv .Beta )
146
+ assert .Equal (t , opts .URL , sv .URL )
147
+ assert .Equal (t , opts .SHA , sv .SHA )
148
+ assert .Equal (t , len (opts .Archs ), len (sv .Archs ))
149
+ for i , arch := range opts .Archs {
150
+ assert .Equal (t , arch .URL , sv .Archs [i ].URL )
151
+ assert .Equal (t , arch .Sha , sv .Archs [i ].Sha )
152
+ assert .Equal (t , arch .OS , sv .Archs [i ].OS )
153
+ assert .Equal (t , arch .Arch , sv .Archs [i ].Arch )
154
+ }
155
+ })
156
+
157
+ t .Run ("with valid options including archs" , func (t * testing.T ) {
158
+ opts := AdminSentinelVersionCreateOptions {
159
+ Version : version ,
160
+ Deprecated : Bool (true ),
161
+ DeprecatedReason : String ("Test Reason" ),
162
+ Official : Bool (false ),
163
+ Enabled : Bool (false ),
164
+ Beta : Bool (false ),
165
+ Archs : []* ToolVersionArchitecture {
166
+ {
167
+ URL : url ,
168
+ Sha : * amd64Sha ,
169
+ OS : linux ,
119
170
Arch : amd64 ,
120
171
},
121
172
{
122
- URL : "https://www.hashicorp.com" ,
173
+ URL : url ,
123
174
Sha : * String (genSha (t )),
124
175
OS : linux ,
125
176
Arch : arm64 ,
@@ -151,8 +202,8 @@ func TestAdminSentinelVersions_CreateDelete(t *testing.T) {
151
202
t .Run ("with valid options including url, and sha" , func (t * testing.T ) {
152
203
opts := AdminSentinelVersionCreateOptions {
153
204
Version : version ,
154
- URL : "https://www.hashicorp.com" ,
155
- SHA : genSha ( t ) ,
205
+ URL : url ,
206
+ SHA : * amd64Sha ,
156
207
Deprecated : Bool (true ),
157
208
DeprecatedReason : String ("Test Reason" ),
158
209
Official : Bool (false ),
@@ -186,8 +237,8 @@ func TestAdminSentinelVersions_CreateDelete(t *testing.T) {
186
237
version = createAdminSentinelVersion ()
187
238
opts := AdminSentinelVersionCreateOptions {
188
239
Version : version ,
189
- URL : "https://www.hashicorp.com" ,
190
- SHA : genSha ( t ) ,
240
+ URL : url ,
241
+ SHA : * amd64Sha ,
191
242
}
192
243
sv , err := client .Admin .SentinelVersions .Create (ctx , opts )
193
244
require .NoError (t , err )
@@ -220,8 +271,8 @@ func TestAdminSentinelVersions_CreateDelete(t *testing.T) {
220
271
Version : version ,
221
272
Archs : []* ToolVersionArchitecture {
222
273
{
223
- URL : "https://www.hashicorp.com" ,
224
- Sha : * String ( genSha ( t )) ,
274
+ URL : url ,
275
+ Sha : * amd64Sha ,
225
276
OS : linux ,
226
277
Arch : amd64 ,
227
278
},
0 commit comments