Update BitBucket + GitLab Payloads
This commit is contained in:
+157
-1
@@ -39,7 +39,27 @@ func TestMain(m *testing.M) {
|
||||
|
||||
// setup
|
||||
hook = New(&Config{UUID: "MY_UUID"})
|
||||
hook.RegisterEvents(HandlePayload, RepoPushEvent, RepoForkEvent, RepoCommitCommentCreatedEvent, RepoCommitStatusCreatedEvent, RepoCommitStatusUpdatedEvent, IssueCreatedEvent, IssueUpdatedEvent, IssueCommentCreatedEvent, PullRequestCreatedEvent, PullRequestUpdatedEvent, PullRequestApprovedEvent, PullRequestApprovalRemovedEvent, PullRequestMergedEvent, PullRequestDeclinedEvent, PullRequestCommentCreatedEvent, PullRequestCommentUpdatedEvent, PullRequestCommentDeletedEvent)
|
||||
hook.RegisterEvents(
|
||||
HandlePayload,
|
||||
RepoPushEvent,
|
||||
RepoForkEvent,
|
||||
RepoUpdatedEvent,
|
||||
RepoCommitCommentCreatedEvent,
|
||||
RepoCommitStatusCreatedEvent,
|
||||
RepoCommitStatusUpdatedEvent,
|
||||
IssueCreatedEvent,
|
||||
IssueUpdatedEvent,
|
||||
IssueCommentCreatedEvent,
|
||||
PullRequestCreatedEvent,
|
||||
PullRequestUpdatedEvent,
|
||||
PullRequestApprovedEvent,
|
||||
PullRequestUnapprovedEvent,
|
||||
PullRequestMergedEvent,
|
||||
PullRequestDeclinedEvent,
|
||||
PullRequestCommentCreatedEvent,
|
||||
PullRequestCommentUpdatedEvent,
|
||||
PullRequestCommentDeletedEvent,
|
||||
)
|
||||
|
||||
go webhooks.Run(hook, "127.0.0.1:"+strconv.Itoa(port), path)
|
||||
time.Sleep(time.Millisecond * 500)
|
||||
@@ -445,6 +465,142 @@ func TestRepoFork(t *testing.T) {
|
||||
Equal(t, resp.StatusCode, http.StatusOK)
|
||||
}
|
||||
|
||||
func TestRepoUpdated(t *testing.T) {
|
||||
|
||||
payload := `{
|
||||
"actor": {
|
||||
"type": "user",
|
||||
"username": "emmap1",
|
||||
"display_name": "Emma",
|
||||
"uuid": "{a54f16da-24e9-4d7f-a3a7-b1ba2cd98aa3}",
|
||||
"links": {
|
||||
"self": {
|
||||
"href": "https://api.bitbucket.org/api/2.0/users/emmap1"
|
||||
},
|
||||
"html": {
|
||||
"href": "https://api.bitbucket.org/emmap1"
|
||||
},
|
||||
"avatar": {
|
||||
"href": "https://bitbucket-api-assetroot.s3.amazonaws.com/c/photos/2015/Feb/26/3613917261-0-emmap1-avatar_avatar.png"
|
||||
}
|
||||
}
|
||||
},
|
||||
"repository": {
|
||||
"type": "repository",
|
||||
"links": {
|
||||
"self": {
|
||||
"href": "https://api.bitbucket.org/api/2.0/repositories/bitbucket/bitbucket"
|
||||
},
|
||||
"html": {
|
||||
"href": "https://api.bitbucket.org/bitbucket/bitbucket"
|
||||
},
|
||||
"avatar": {
|
||||
"href": "https://api-staging-assetroot.s3.amazonaws.com/c/photos/2014/Aug/01/bitbucket-logo-2629490769-3_avatar.png"
|
||||
}
|
||||
},
|
||||
"uuid": "{673a6070-3421-46c9-9d48-90745f7bfe8e}",
|
||||
"project": {
|
||||
"type": "project",
|
||||
"project": "Untitled project",
|
||||
"uuid": "{3b7898dc-6891-4225-ae60-24613bb83080}",
|
||||
"links": {
|
||||
"html": {
|
||||
"href": "https://bitbucket.org/account/user/teamawesome/projects/proj"
|
||||
},
|
||||
"avatar": {
|
||||
"href": "https://bitbucket.org/account/user/teamawesome/projects/proj/avatar/32"
|
||||
}
|
||||
},
|
||||
"key": "proj"
|
||||
},
|
||||
"full_name": "team_name/repo_name",
|
||||
"name": "repo_name",
|
||||
"website": "https://mywebsite.com/",
|
||||
"owner": {
|
||||
"type": "user",
|
||||
"username": "emmap1",
|
||||
"display_name": "Emma",
|
||||
"uuid": "{a54f16da-24e9-4d7f-a3a7-b1ba2cd98aa3}",
|
||||
"links": {
|
||||
"self": {
|
||||
"href": "https://api.bitbucket.org/api/2.0/users/emmap1"
|
||||
},
|
||||
"html": {
|
||||
"href": "https://api.bitbucket.org/emmap1"
|
||||
},
|
||||
"avatar": {
|
||||
"href": "https://bitbucket-api-assetroot.s3.amazonaws.com/c/photos/2015/Feb/26/3613917261-0-emmap1-avatar_avatar.png"
|
||||
}
|
||||
}
|
||||
},
|
||||
"scm": "git",
|
||||
"is_private": true
|
||||
},
|
||||
"changes": {
|
||||
"name": {
|
||||
"new": "repository",
|
||||
"old": "repository_name"
|
||||
},
|
||||
"website": {
|
||||
"new": "http://www.example.com/",
|
||||
"old": ""
|
||||
},
|
||||
"language": {
|
||||
"new": "java",
|
||||
"old": ""
|
||||
},
|
||||
"links": {
|
||||
"new": {
|
||||
"avatar": {
|
||||
"href": "https://bitbucket.org/teamawesome/repository/avatar/32/"
|
||||
},
|
||||
"self": {
|
||||
"href": "https://api.bitbucket.org/2.0/repositories/teamawesome/repository"
|
||||
},
|
||||
"html": {
|
||||
"href": "https://bitbucket.org/teamawesome/repository"
|
||||
}
|
||||
},
|
||||
"old": {
|
||||
"avatar": {
|
||||
"href": "https://bitbucket.org/teamawesome/repository_name/avatar/32/"
|
||||
},
|
||||
"self": {
|
||||
"href": "https://api.bitbucket.org/2.0/repositories/teamawesome/repository_name"
|
||||
},
|
||||
"html": {
|
||||
"href": "https://bitbucket.org/teamawesome/repository_name"
|
||||
}
|
||||
}
|
||||
},
|
||||
"description": {
|
||||
"new": "This is a better description.",
|
||||
"old": "This is a description."
|
||||
},
|
||||
"full_name": {
|
||||
"new": "teamawesome/repository",
|
||||
"old": "teamawesome/repository_name"
|
||||
}
|
||||
}
|
||||
}
|
||||
`
|
||||
|
||||
req, err := http.NewRequest("POST", "http://127.0.0.1:3009/webhooks", bytes.NewBuffer([]byte(payload)))
|
||||
req.Header.Set("Content-Type", "application/json")
|
||||
req.Header.Set("X-Hook-UUID", "MY_UUID")
|
||||
req.Header.Set("X-Event-Key", "repo:updated")
|
||||
|
||||
Equal(t, err, nil)
|
||||
|
||||
client := &http.Client{}
|
||||
resp, err := client.Do(req)
|
||||
Equal(t, err, nil)
|
||||
|
||||
defer resp.Body.Close()
|
||||
|
||||
Equal(t, resp.StatusCode, http.StatusOK)
|
||||
}
|
||||
|
||||
func TestRepoCommitCommentCreated(t *testing.T) {
|
||||
|
||||
payload := `{
|
||||
|
||||
Reference in New Issue
Block a user