@@ -135,40 +135,62 @@ func TestProvisionerKeys(t *testing.T) {
135
135
require .ErrorContains (t , err , "reserved" )
136
136
}
137
137
138
- func TestProvisionerKey (t * testing.T ) {
138
+ func TestGetProvisionerKey (t * testing.T ) {
139
139
t .Parallel ()
140
- t .Run ("GetKey" , func (t * testing.T ) {
141
- t .Parallel ()
142
140
143
- ctx := testutil .Context (t , testutil .WaitShort )
141
+ tests := []struct {
142
+ name string
143
+ useFakeKey bool
144
+ fakeKey string
145
+ success bool
146
+ expectedErr string
147
+ }{
148
+ {
149
+ name : "ok" ,
150
+ useFakeKey : false ,
151
+ success : true ,
152
+ expectedErr : "" ,
153
+ },
154
+ }
144
155
145
- dv := coderdtest .DeploymentValues (t )
146
- client , owner := coderdenttest .New (t , & coderdenttest.Options {
147
- Options : & coderdtest.Options {
148
- DeploymentValues : dv ,
149
- },
150
- LicenseOptions : & coderdenttest.LicenseOptions {
151
- Features : license.Features {
152
- codersdk .FeatureMultipleOrganizations : 1 ,
153
- codersdk .FeatureExternalProvisionerDaemons : 1 ,
154
- },
155
- },
156
- })
156
+ for _ , tt := range tests {
157
+ tt := tt
158
+ t .Run (tt .name , func (t * testing.T ) {
159
+ t .Parallel ()
157
160
158
- // nolint:gocritic
159
- key , err := client .CreateProvisionerKey (ctx , owner .OrganizationID , codersdk.CreateProvisionerKeyRequest {
160
- Name : "my-test-key" ,
161
- Tags : map [string ]string {"key1" : "value1" , "key2" : "value2" },
161
+ ctx := testutil .Context (t , testutil .WaitShort )
162
+ dv := coderdtest .DeploymentValues (t )
163
+ client , owner := coderdenttest .New (t , & coderdenttest.Options {
164
+ Options : & coderdtest.Options {
165
+ DeploymentValues : dv ,
166
+ },
167
+ LicenseOptions : & coderdenttest.LicenseOptions {
168
+ Features : license.Features {
169
+ codersdk .FeatureMultipleOrganizations : 1 ,
170
+ codersdk .FeatureExternalProvisionerDaemons : 1 ,
171
+ },
172
+ },
173
+ })
174
+
175
+ key , err := client .CreateProvisionerKey (ctx , owner .OrganizationID , codersdk.CreateProvisionerKeyRequest {
176
+ Name : "my-test-key" ,
177
+ Tags : map [string ]string {"key1" : "value1" , "key2" : "value2" },
178
+ })
179
+ require .NoError (t , err )
180
+
181
+ pk := key .Key
182
+ if tt .useFakeKey {
183
+ pk = tt .fakeKey
184
+ }
185
+
186
+ fetchedKey , err := client .GetProvisionerKey (ctx , pk )
187
+ if ! tt .success {
188
+ require .ErrorContains (t , err , tt .expectedErr )
189
+ } else {
190
+ require .NoError (t , err )
191
+ require .Equal (t , fetchedKey .Name , "my-test-key" )
192
+ require .Equal (t , fetchedKey .Tags , codersdk.ProvisionerKeyTags {"key1" : "value1" , "key2" : "value2" })
193
+ }
162
194
})
163
- require .NoError (t , err )
164
-
165
- fetchedKey , err := client .GetProvisionerKey (ctx , key .Key )
166
- require .NoError (t , err )
167
- require .Equal (t , fetchedKey .Name , "my-test-key" )
168
- require .Equal (t , fetchedKey .Tags , codersdk.ProvisionerKeyTags {"key1" : "value1" , "key2" : "value2" })
169
-
170
- erroneousPK , err := client .GetProvisionerKey (ctx , "abcdefghijklmnopqrstuvwxyz01234567890123456" )
171
- require .Empty (t , erroneousPK )
172
- require .Error (t , err )
173
- })
195
+ }
174
196
}
0 commit comments