Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit4a38977

Browse files
committed
improve testing strategy and errors handling
1 parent960084d commit4a38977

File tree

2 files changed

+56
-32
lines changed

2 files changed

+56
-32
lines changed

‎enterprise/coderd/provisionerkeys.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,9 @@ func (*API) fetchProvisionerKey(rw http.ResponseWriter, r *http.Request) {
214214
pk,ok:=httpmw.ProvisionerKeyAuthOptional(r)
215215
// extra check but this one should never happen as it is covered by the auth middleware
216216
if!ok {
217-
httpapi.Forbidden(rw)
217+
httpapi.Write(ctx,rw,http.StatusForbidden, codersdk.Response{
218+
Message:fmt.Sprintf("unable to auth: please provide the %s header",codersdk.ProvisionerDaemonKey),
219+
})
218220
return
219221
}
220222

‎enterprise/coderd/provisionerkeys_test.go

Lines changed: 53 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -135,40 +135,62 @@ func TestProvisionerKeys(t *testing.T) {
135135
require.ErrorContains(t,err,"reserved")
136136
}
137137

138-
funcTestProvisionerKey(t*testing.T) {
138+
funcTestGetProvisionerKey(t*testing.T) {
139139
t.Parallel()
140-
t.Run("GetKey",func(t*testing.T) {
141-
t.Parallel()
142140

143-
ctx:=testutil.Context(t,testutil.WaitShort)
141+
tests:= []struct {
142+
namestring
143+
useFakeKeybool
144+
fakeKeystring
145+
successbool
146+
expectedErrstring
147+
}{
148+
{
149+
name:"ok",
150+
useFakeKey:false,
151+
success:true,
152+
expectedErr:"",
153+
},
154+
}
144155

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:=rangetests {
157+
tt:=tt
158+
t.Run(tt.name,func(t*testing.T) {
159+
t.Parallel()
157160

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+
iftt.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+
}
162194
})
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+
}
174196
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp