Skip to content

Commit 1c2278f

Browse files
committed
Fix test
1 parent 3df8656 commit 1c2278f

File tree

1 file changed

+94
-61
lines changed

1 file changed

+94
-61
lines changed

tests/integration/repo_webhook_test.go

Lines changed: 94 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -113,11 +113,13 @@ func (m *mockWebhookProvider) Close() {
113113
}
114114

115115
func Test_WebhookCreate(t *testing.T) {
116-
var payload api.CreatePayload
116+
var payloads []api.CreatePayload
117117
var triggeredEvent string
118118
provider := newMockWebhookProvider(func(content string) {
119+
var payload api.CreatePayload
119120
err := json.Unmarshal([]byte(content), &payload)
120121
assert.NoError(t, err)
122+
payloads = append(payloads, payload)
121123
triggeredEvent = string(webhook_module.HookEventCreate)
122124
})
123125
defer provider.Close()
@@ -132,20 +134,23 @@ func Test_WebhookCreate(t *testing.T) {
132134
testAPICreateBranch(t, session, "user2", "repo1", "master", "master2", http.StatusCreated)
133135

134136
// 3. validate the webhook is triggered
137+
assert.Len(t, payloads, 1)
135138
assert.EqualValues(t, string(webhook_module.HookEventCreate), triggeredEvent)
136-
assert.EqualValues(t, "repo1", payload.Repo.Name)
137-
assert.EqualValues(t, "user2/repo1", payload.Repo.FullName)
138-
assert.EqualValues(t, "master2", payload.Ref)
139-
assert.EqualValues(t, "branch", payload.RefType)
139+
assert.EqualValues(t, "repo1", payloads[0].Repo.Name)
140+
assert.EqualValues(t, "user2/repo1", payloads[0].Repo.FullName)
141+
assert.EqualValues(t, "master2", payloads[0].Ref)
142+
assert.EqualValues(t, "branch", payloads[0].RefType)
140143
})
141144
}
142145

143146
func Test_WebhookDelete(t *testing.T) {
144-
var payload api.DeletePayload
147+
var payloads []api.DeletePayload
145148
var triggeredEvent string
146149
provider := newMockWebhookProvider(func(content string) {
150+
var payload api.DeletePayload
147151
err := json.Unmarshal([]byte(content), &payload)
148152
assert.NoError(t, err)
153+
payloads = append(payloads, payload)
149154
triggeredEvent = "delete"
150155
})
151156
defer provider.Close()
@@ -162,19 +167,22 @@ func Test_WebhookDelete(t *testing.T) {
162167

163168
// 3. validate the webhook is triggered
164169
assert.EqualValues(t, "delete", triggeredEvent)
165-
assert.EqualValues(t, "repo1", payload.Repo.Name)
166-
assert.EqualValues(t, "user2/repo1", payload.Repo.FullName)
167-
assert.EqualValues(t, "master2", payload.Ref)
168-
assert.EqualValues(t, "branch", payload.RefType)
170+
assert.Len(t, payloads, 1)
171+
assert.EqualValues(t, "repo1", payloads[0].Repo.Name)
172+
assert.EqualValues(t, "user2/repo1", payloads[0].Repo.FullName)
173+
assert.EqualValues(t, "master2", payloads[0].Ref)
174+
assert.EqualValues(t, "branch", payloads[0].RefType)
169175
})
170176
}
171177

172178
func Test_WebhookFork(t *testing.T) {
173-
var payload api.ForkPayload
179+
var payloads []api.ForkPayload
174180
var triggeredEvent string
175181
provider := newMockWebhookProvider(func(content string) {
182+
var payload api.ForkPayload
176183
err := json.Unmarshal([]byte(content), &payload)
177184
assert.NoError(t, err)
185+
payloads = append(payloads, payload)
178186
triggeredEvent = "fork"
179187
})
180188
defer provider.Close()
@@ -190,19 +198,22 @@ func Test_WebhookFork(t *testing.T) {
190198

191199
// 3. validate the webhook is triggered
192200
assert.EqualValues(t, "fork", triggeredEvent)
193-
assert.EqualValues(t, "repo1-fork", payload.Repo.Name)
194-
assert.EqualValues(t, "user1/repo1-fork", payload.Repo.FullName)
195-
assert.EqualValues(t, "repo1", payload.Forkee.Name)
196-
assert.EqualValues(t, "user2/repo1", payload.Forkee.FullName)
201+
assert.Len(t, payloads, 1)
202+
assert.EqualValues(t, "repo1-fork", payloads[0].Repo.Name)
203+
assert.EqualValues(t, "user1/repo1-fork", payloads[0].Repo.FullName)
204+
assert.EqualValues(t, "repo1", payloads[0].Forkee.Name)
205+
assert.EqualValues(t, "user2/repo1", payloads[0].Forkee.FullName)
197206
})
198207
}
199208

200209
func Test_WebhookIssueComment(t *testing.T) {
201-
var payload api.IssueCommentPayload
210+
var payloads []api.IssueCommentPayload
202211
var triggeredEvent string
203212
provider := newMockWebhookProvider(func(content string) {
213+
var payload api.IssueCommentPayload
204214
err := json.Unmarshal([]byte(content), &payload)
205215
assert.NoError(t, err)
216+
payloads = append(payloads, payload)
206217
triggeredEvent = "issue_comment"
207218
})
208219
defer provider.Close()
@@ -219,21 +230,24 @@ func Test_WebhookIssueComment(t *testing.T) {
219230

220231
// 3. validate the webhook is triggered
221232
assert.EqualValues(t, "issue_comment", triggeredEvent)
222-
assert.EqualValues(t, "created", payload.Action)
223-
assert.EqualValues(t, "repo1", payload.Issue.Repo.Name)
224-
assert.EqualValues(t, "user2/repo1", payload.Issue.Repo.FullName)
225-
assert.EqualValues(t, "Title2", payload.Issue.Title)
226-
assert.EqualValues(t, "Description2", payload.Issue.Body)
227-
assert.EqualValues(t, "issue title2 comment1", payload.Comment.Body)
233+
assert.Len(t, payloads, 1)
234+
assert.EqualValues(t, "created", payloads[0].Action)
235+
assert.EqualValues(t, "repo1", payloads[0].Issue.Repo.Name)
236+
assert.EqualValues(t, "user2/repo1", payloads[0].Issue.Repo.FullName)
237+
assert.EqualValues(t, "Title2", payloads[0].Issue.Title)
238+
assert.EqualValues(t, "Description2", payloads[0].Issue.Body)
239+
assert.EqualValues(t, "issue title2 comment1", payloads[0].Comment.Body)
228240
})
229241
}
230242

231243
func Test_WebhookRelease(t *testing.T) {
232-
var payload api.ReleasePayload
244+
var payloads []api.ReleasePayload
233245
var triggeredEvent string
234246
provider := newMockWebhookProvider(func(content string) {
247+
var payload api.ReleasePayload
235248
err := json.Unmarshal([]byte(content), &payload)
236249
assert.NoError(t, err)
250+
payloads = append(payloads, payload)
237251
triggeredEvent = "release"
238252
})
239253
defer provider.Close()
@@ -249,20 +263,23 @@ func Test_WebhookRelease(t *testing.T) {
249263

250264
// 3. validate the webhook is triggered
251265
assert.EqualValues(t, "release", triggeredEvent)
252-
assert.EqualValues(t, "repo1", payload.Repository.Name)
253-
assert.EqualValues(t, "user2/repo1", payload.Repository.FullName)
254-
assert.EqualValues(t, "v0.0.99", payload.Release.TagName)
255-
assert.False(t, payload.Release.IsDraft)
256-
assert.False(t, payload.Release.IsPrerelease)
266+
assert.Len(t, payloads, 1)
267+
assert.EqualValues(t, "repo1", payloads[0].Repository.Name)
268+
assert.EqualValues(t, "user2/repo1", payloads[0].Repository.FullName)
269+
assert.EqualValues(t, "v0.0.99", payloads[0].Release.TagName)
270+
assert.False(t, payloads[0].Release.IsDraft)
271+
assert.False(t, payloads[0].Release.IsPrerelease)
257272
})
258273
}
259274

260275
func Test_WebhookPush(t *testing.T) {
261-
var payload api.PushPayload
276+
var payloads []api.PushPayload
262277
var triggeredEvent string
263278
provider := newMockWebhookProvider(func(content string) {
279+
var payload api.PushPayload
264280
err := json.Unmarshal([]byte(content), &payload)
265281
assert.NoError(t, err)
282+
payloads = append(payloads, payload)
266283
triggeredEvent = "push"
267284
})
268285
defer provider.Close()
@@ -278,19 +295,22 @@ func Test_WebhookPush(t *testing.T) {
278295

279296
// 3. validate the webhook is triggered
280297
assert.EqualValues(t, "push", triggeredEvent)
281-
assert.EqualValues(t, "repo1", payload.Repo.Name)
282-
assert.EqualValues(t, "user2/repo1", payload.Repo.FullName)
283-
assert.Len(t, payload.Commits, 1)
284-
assert.EqualValues(t, []string{"test_webhook_push.md"}, payload.Commits[0].Added)
298+
assert.Len(t, payloads, 1)
299+
assert.EqualValues(t, "repo1", payloads[0].Repo.Name)
300+
assert.EqualValues(t, "user2/repo1", payloads[0].Repo.FullName)
301+
assert.Len(t, payloads[0].Commits, 1)
302+
assert.EqualValues(t, []string{"test_webhook_push.md"}, payloads[0].Commits[0].Added)
285303
})
286304
}
287305

288306
func Test_WebhookIssue(t *testing.T) {
289-
var payload api.IssuePayload
307+
var payloads []api.IssuePayload
290308
var triggeredEvent string
291309
provider := newMockWebhookProvider(func(content string) {
310+
var payload api.IssuePayload
292311
err := json.Unmarshal([]byte(content), &payload)
293312
assert.NoError(t, err)
313+
payloads = append(payloads, payload)
294314
triggeredEvent = "issues"
295315
})
296316
defer provider.Close()
@@ -306,20 +326,23 @@ func Test_WebhookIssue(t *testing.T) {
306326

307327
// 3. validate the webhook is triggered
308328
assert.EqualValues(t, "issues", triggeredEvent)
309-
assert.EqualValues(t, "opened", payload.Action)
310-
assert.EqualValues(t, "repo1", payload.Issue.Repo.Name)
311-
assert.EqualValues(t, "user2/repo1", payload.Issue.Repo.FullName)
312-
assert.EqualValues(t, "Title1", payload.Issue.Title)
313-
assert.EqualValues(t, "Description1", payload.Issue.Body)
329+
assert.Len(t, payloads, 1)
330+
assert.EqualValues(t, "opened", payloads[0].Action)
331+
assert.EqualValues(t, "repo1", payloads[0].Issue.Repo.Name)
332+
assert.EqualValues(t, "user2/repo1", payloads[0].Issue.Repo.FullName)
333+
assert.EqualValues(t, "Title1", payloads[0].Issue.Title)
334+
assert.EqualValues(t, "Description1", payloads[0].Issue.Body)
314335
})
315336
}
316337

317338
func Test_WebhookPullRequest(t *testing.T) {
318-
var payload api.PullRequestPayload
339+
var payloads []api.PullRequestPayload
319340
var triggeredEvent string
320341
provider := newMockWebhookProvider(func(content string) {
342+
var payload api.PullRequestPayload
321343
err := json.Unmarshal([]byte(content), &payload)
322344
assert.NoError(t, err)
345+
payloads = append(payloads, payload)
323346
triggeredEvent = "pull_request"
324347
})
325348
defer provider.Close()
@@ -337,20 +360,23 @@ func Test_WebhookPullRequest(t *testing.T) {
337360

338361
// 3. validate the webhook is triggered
339362
assert.EqualValues(t, "pull_request", triggeredEvent)
340-
assert.EqualValues(t, "repo1", payload.PullRequest.Base.Repository.Name)
341-
assert.EqualValues(t, "user2/repo1", payload.PullRequest.Base.Repository.FullName)
342-
assert.EqualValues(t, "repo1", payload.PullRequest.Head.Repository.Name)
343-
assert.EqualValues(t, "user2/repo1", payload.PullRequest.Head.Repository.FullName)
344-
assert.EqualValues(t, 0, payload.PullRequest.Additions)
363+
assert.Len(t, payloads, 1)
364+
assert.EqualValues(t, "repo1", payloads[0].PullRequest.Base.Repository.Name)
365+
assert.EqualValues(t, "user2/repo1", payloads[0].PullRequest.Base.Repository.FullName)
366+
assert.EqualValues(t, "repo1", payloads[0].PullRequest.Head.Repository.Name)
367+
assert.EqualValues(t, "user2/repo1", payloads[0].PullRequest.Head.Repository.FullName)
368+
assert.EqualValues(t, 0, payloads[0].PullRequest.Additions)
345369
})
346370
}
347371

348372
func Test_WebhookWiki(t *testing.T) {
349-
var payload api.WikiPayload
373+
var payloads []api.WikiPayload
350374
var triggeredEvent string
351375
provider := newMockWebhookProvider(func(content string) {
376+
var payload api.WikiPayload
352377
err := json.Unmarshal([]byte(content), &payload)
353378
assert.NoError(t, err)
379+
payloads = append(payloads, payload)
354380
triggeredEvent = "wiki"
355381
})
356382
defer provider.Close()
@@ -366,19 +392,22 @@ func Test_WebhookWiki(t *testing.T) {
366392

367393
// 3. validate the webhook is triggered
368394
assert.EqualValues(t, "wiki", triggeredEvent)
369-
assert.EqualValues(t, "created", payload.Action)
370-
assert.EqualValues(t, "created", payload.Repository.Name)
371-
assert.EqualValues(t, "user2/repo1", payload.Repository.FullName)
372-
assert.EqualValues(t, "Test Wiki Page", payload.Page)
395+
assert.Len(t, payloads, 1)
396+
assert.EqualValues(t, "created", payloads[0].Action)
397+
assert.EqualValues(t, "repo1", payloads[0].Repository.Name)
398+
assert.EqualValues(t, "user2/repo1", payloads[0].Repository.FullName)
399+
assert.EqualValues(t, "Test-Wiki-Page", payloads[0].Page)
373400
})
374401
}
375402

376403
func Test_WebhookRepository(t *testing.T) {
377-
var payload api.RepositoryPayload
404+
var payloads []api.RepositoryPayload
378405
var triggeredEvent string
379406
provider := newMockWebhookProvider(func(content string) {
407+
var payload api.RepositoryPayload
380408
err := json.Unmarshal([]byte(content), &payload)
381409
assert.NoError(t, err)
410+
payloads = append(payloads, payload)
382411
triggeredEvent = "repository"
383412
})
384413
defer provider.Close()
@@ -394,19 +423,22 @@ func Test_WebhookRepository(t *testing.T) {
394423

395424
// 3. validate the webhook is triggered
396425
assert.EqualValues(t, "repository", triggeredEvent)
397-
assert.EqualValues(t, "created", payload.Action)
398-
assert.EqualValues(t, "org3", payload.Organization.UserName)
399-
assert.EqualValues(t, "repo_new", payload.Repository.Name)
400-
assert.EqualValues(t, "org3/repo_new", payload.Repository.FullName)
426+
assert.Len(t, payloads, 1)
427+
assert.EqualValues(t, "created", payloads[0].Action)
428+
assert.EqualValues(t, "org3", payloads[0].Organization.UserName)
429+
assert.EqualValues(t, "repo_new", payloads[0].Repository.Name)
430+
assert.EqualValues(t, "org3/repo_new", payloads[0].Repository.FullName)
401431
})
402432
}
403433

404434
func Test_WebhookPackage(t *testing.T) {
405-
var payload api.PackagePayload
435+
var payloads []api.PackagePayload
406436
var triggeredEvent string
407437
provider := newMockWebhookProvider(func(content string) {
438+
var payload api.PackagePayload
408439
err := json.Unmarshal([]byte(content), &payload)
409440
assert.NoError(t, err)
441+
payloads = append(payloads, payload)
410442
triggeredEvent = "package"
411443
})
412444
defer provider.Close()
@@ -426,10 +458,11 @@ func Test_WebhookPackage(t *testing.T) {
426458

427459
// 3. validate the webhook is triggered
428460
assert.EqualValues(t, "package", triggeredEvent)
429-
assert.EqualValues(t, "created", payload.Action)
430-
assert.EqualValues(t, "gitea", payload.Package.Name)
431-
assert.EqualValues(t, "generic", payload.Package.Type)
432-
assert.EqualValues(t, "org3", payload.Organization.UserName)
433-
assert.EqualValues(t, "v1.24.0", payload.Package.Version)
461+
assert.Len(t, payloads, 1)
462+
assert.EqualValues(t, "created", payloads[0].Action)
463+
assert.EqualValues(t, "gitea", payloads[0].Package.Name)
464+
assert.EqualValues(t, "generic", payloads[0].Package.Type)
465+
assert.EqualValues(t, "org3", payloads[0].Organization.UserName)
466+
assert.EqualValues(t, "v1.24.0", payloads[0].Package.Version)
434467
})
435468
}

0 commit comments

Comments
 (0)