diff --git a/bitbucket/bitbucket_test.go b/bitbucket/bitbucket_test.go index e81eadd..ca85e03 100644 --- a/bitbucket/bitbucket_test.go +++ b/bitbucket/bitbucket_test.go @@ -171,213 +171,8 @@ func TestUnsubscribedEvent(t *testing.T) { func TestRepoPush(t *testing.T) { - payload := `{ - "actor":{ - "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":{ - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "push":{ - "changes":[ - { - "new":{ - "type":"branch", - "name":"name-of-branch", - "target":{ - "type":"commit", - "hash":"709d658dc5b6d6afcd46049c2f332ee3f515a67d", - "author":{ - "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" - } - } - }, - "message":"new commit message\n", - "date":"2015-06-09T03:34:49+00:00", - "parents":[ - { - "type":"commit", - "hash":"1e65c05c1d5171631d92438a13901ca7dae9618c", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commit/8cbbd65829c7ad834a97841e0defc965718036a0" - }, - "html":{ - "href":"https://bitbucket.org/user_name/repo_name/commits/8cbbd65829c7ad834a97841e0defc965718036a0" - } - } - } - ], - "links":{ - "self":{ - "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commit/c4b2b7914156a878aa7c9da452a09fb50c2091f2" - }, - "html":{ - "href":"https://bitbucket.org/user_name/repo_name/commits/c4b2b7914156a878aa7c9da452a09fb50c2091f2" - } - } - }, - "links":{ - "self":{ - "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/refs/branches/master" - }, - "commits":{ - "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commits/master" - }, - "html":{ - "href":"https://bitbucket.org/user_name/repo_name/branch/master" - } - } - }, - "old":{ - "type":"branch", - "name":"name-of-branch", - "target":{ - "type":"commit", - "hash":"1e65c05c1d5171631d92438a13901ca7dae9618c", - "author":{ - "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" - } - } - }, - "message":"old commit message\n", - "date":"2015-06-08T21:34:56+00:00", - "parents":[ - { - "type":"commit", - "hash":"e0d0c2041e09746be5ce4b55067d5a8e3098c843", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commit/9c4a3452da3bc4f37af5a6bb9c784246f44406f7" - }, - "html":{ - "href":"https://bitbucket.org/user_name/repo_name/commits/9c4a3452da3bc4f37af5a6bb9c784246f44406f7" - } - } - } - ], - "links":{ - "self":{ - "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commit/b99ea6dad8f416e57c5ca78c1ccef590600d841b" - }, - "html":{ - "href":"https://bitbucket.org/user_name/repo_name/commits/b99ea6dad8f416e57c5ca78c1ccef590600d841b" - } - } - }, - "links":{ - "self":{ - "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/refs/branches/master" - }, - "commits":{ - "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commits/master" - }, - "html":{ - "href":"https://bitbucket.org/user_name/repo_name/branch/master" - } - } - }, - "links":{ - "html":{ - "href":"https://bitbucket.org/user_name/repo_name/branches/compare/c4b2b7914156a878aa7c9da452a09fb50c2091f2..b99ea6dad8f416e57c5ca78c1ccef590600d841b" - }, - "diff":{ - "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/diff/c4b2b7914156a878aa7c9da452a09fb50c2091f2..b99ea6dad8f416e57c5ca78c1ccef590600d841b" - }, - "commits":{ - "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commits?include=c4b2b7914156a878aa7c9da452a09fb50c2091f2&exclude=b99ea6dad8f416e57c5ca78c1ccef590600d841b" - } - }, - "created":false, - "forced":false, - "closed":false, - "commits":[ - { - "hash":"03f4a7270240708834de475bcf21532d6134777e", - "type":"commit", - "message":"commit message\n", - "author":{ - "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" - } - } - }, - "links":{ - "self":{ - "href":"https://api.bitbucket.org/2.0/repositories/user/repo/commit/03f4a7270240708834de475bcf21532d6134777e" - }, - "html":{ - "href":"https://bitbucket.org/user/repo/commits/03f4a7270240708834de475bcf21532d6134777e" - } - } - } - ], - "truncated":false - } - ] - } -} -` + payload, err := os.Open("../testdata/bitbucket/repo-push.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -386,7 +181,7 @@ func TestRepoPush(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -405,61 +200,8 @@ func TestRepoPush(t *testing.T) { func TestRepoFork(t *testing.T) { - payload := `{ - "actor":{ - "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":{ - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "fork":{ - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } -} -` + payload, err := os.Open("../testdata/bitbucket/repo-fork.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -468,7 +210,7 @@ func TestRepoFork(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -487,123 +229,8 @@ func TestRepoFork(t *testing.T) { 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" - } - } -} -` + payload, err := os.Open("../testdata/bitbucket/repo-updated.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -612,7 +239,7 @@ func TestRepoUpdated(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -631,72 +258,8 @@ func TestRepoUpdated(t *testing.T) { func TestRepoCommitCommentCreated(t *testing.T) { - payload := `{ - "actor":{ - "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" - } - } - }, - "comment":{ - "id":17, - "parent":{ - "id":16 - }, - "content":{ - "raw":"Comment text", - "html":"
Comment text
", - "markup":"markdown" - }, - "inline":{ - "path":"path/to/file", - "from":null, - "to":10 - }, - "created_on":"2015-04-06T16:52:29.982346+00:00", - "updated_on":"2015-04-06T16:52:29.983730+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" - }, - "html":{ - "href":"https://api.bitbucket.org/comment_id" - } - } - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "commit":{ - "hash":"d3022fc0ca3d65c7f6654eea129d6bf0cf0ee08e" - } -} -` + payload, err := os.Open("../testdata/bitbucket/commit-comment-created.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -705,7 +268,7 @@ func TestRepoCommitCommentCreated(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -724,61 +287,8 @@ func TestRepoCommitCommentCreated(t *testing.T) { func TestRepoCommitStatusCreated(t *testing.T) { - payload := `{ - "actor":{ - "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":{ - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "commit_status":{ - "name":"Unit Tests (Python)", - "description":"Build started", - "state":"INPROGRESS", - "key":"mybuildtool", - "url":"https://my-build-tool.com/builds/MY-PROJECT/BUILD-777", - "type":"build", - "created_on":"2015-11-19T20:37:35.547563+00:00", - "updated_on":"2015-11-19T20:37:35.547563+00:00", - "links":{ - "commit":{ - "href":"http://api.bitbucket.org/2.0/repositories/tk/test/commit/9fec847784abb10b2fa567ee63b85bd238955d0e" - }, - "self":{ - "href":"http://api.bitbucket.org/2.0/repositories/tk/test/commit/9fec847784abb10b2fa567ee63b85bd238955d0e/statuses/build/mybuildtool" - } - } - } -} -` + payload, err := os.Open("../testdata/bitbucket/repo-commit-status-created.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -787,7 +297,7 @@ func TestRepoCommitStatusCreated(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -806,61 +316,8 @@ func TestRepoCommitStatusCreated(t *testing.T) { func TestRepoCommitStatusUpdated(t *testing.T) { - payload := `{ - "actor":{ - "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":{ - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "commit_status":{ - "name":"Unit Tests (Python)", - "description":"All tests passed", - "state":"SUCCESSFUL", - "key":"mybuildtool", - "url":"https://my-build-tool.com/builds/MY-PROJECT/BUILD-792", - "type":"build", - "created_on":"2015-11-19T20:37:35.547563+00:00", - "updated_on":"2015-11-20T08:01:16.433108+00:00", - "links":{ - "commit":{ - "href":"http://api.bitbucket.org/2.0/repositories/tk/test/commit/9fec847784abb10b2fa567ee63b85bd238955d0e" - }, - "self":{ - "href":"http://api.bitbucket.org/2.0/repositories/tk/test/commit/9fec847784abb10b2fa567ee63b85bd238955d0e/statuses/build/mybuildtool" - } - } - } -} -` + payload, err := os.Open("../testdata/bitbucket/repo-commit-status-updated.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -869,7 +326,7 @@ func TestRepoCommitStatusUpdated(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -888,72 +345,8 @@ func TestRepoCommitStatusUpdated(t *testing.T) { func TestIssueCreated(t *testing.T) { - payload := `{ - "actor":{ - "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" - } - } - }, - "issue":{ - "id":1, - "component":"component", - "title":"Issue title", - "content":{ - "raw":"Issue description", - "html":"Issue description
", - "markup":"markdown" - }, - "priority":"trivial|minor|major|critical|blocker", - "state":"new|open|on hold|resolved|duplicate|invalid|wontfix|closed", - "type":"bug|enhancement|proposal|task", - "milestone":{ - "name":"milestone 1" - }, - "version":{ - "name":"version 1" - }, - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.179678+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/issues/issue_id" - }, - "html":{ - "href":"https://api.bitbucket.org/issue_id" - } - } - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } -} -` + payload, err := os.Open("../testdata/bitbucket/issue-created.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -962,7 +355,7 @@ func TestIssueCreated(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -981,104 +374,8 @@ func TestIssueCreated(t *testing.T) { func TestIssueUpdated(t *testing.T) { - payload := `{ - "actor":{ - "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" - } - } - }, - "issue":{ - "id":1, - "component":"component", - "title":"Issue title", - "content":{ - "raw":"Issue description", - "html":"Issue description
", - "markup":"markdown" - }, - "priority":"trivial|minor|major|critical|blocker", - "state":"new|open|on hold|resolved|duplicate|invalid|wontfix|closed", - "type":"bug|enhancement|proposal|task", - "milestone":{ - "name":"milestone 1" - }, - "version":{ - "name":"version 1" - }, - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.179678+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/issues/issue_id" - }, - "html":{ - "href":"https://api.bitbucket.org/issue_id" - } - } - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "comment":{ - "id":17, - "parent":{ - "id":16 - }, - "content":{ - "raw":"Comment text", - "html":"Comment text
", - "markup":"markdown" - }, - "inline":{ - "path":"path/to/file", - "from":null, - "to":10 - }, - "created_on":"2015-04-06T16:52:29.982346+00:00", - "updated_on":"2015-04-06T16:52:29.983730+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" - }, - "html":{ - "href":"https://api.bitbucket.org/comment_id" - } - } - }, - "changes":{ - "status":{ - "old":"open", - "new":"on hold" - } - } -} -` + payload, err := os.Open("../testdata/bitbucket/issue-updated.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -1087,7 +384,7 @@ func TestIssueUpdated(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -1106,98 +403,8 @@ func TestIssueUpdated(t *testing.T) { func TestIssueCommentCreated(t *testing.T) { - payload := `{ - "actor":{ - "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":{ - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "issue":{ - "id":1, - "component":"component", - "title":"Issue title", - "content":{ - "raw":"Issue description", - "html":"Issue description
", - "markup":"markdown" - }, - "priority":"trivial|minor|major|critical|blocker", - "state":"new|open|on hold|resolved|duplicate|invalid|wontfix|closed", - "type":"bug|enhancement|proposal|task", - "milestone":{ - "name":"milestone 1" - }, - "version":{ - "name":"version 1" - }, - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.179678+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/issues/issue_id" - }, - "html":{ - "href":"https://api.bitbucket.org/issue_id" - } - } - }, - "comment":{ - "id":17, - "parent":{ - "id":16 - }, - "content":{ - "raw":"Comment text", - "html":"Comment text
", - "markup":"markdown" - }, - "inline":{ - "path":"path/to/file", - "from":null, - "to":10 - }, - "created_on":"2015-04-06T16:52:29.982346+00:00", - "updated_on":"2015-04-06T16:52:29.983730+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" - }, - "html":{ - "href":"https://api.bitbucket.org/comment_id" - } - } - } -} -` + payload, err := os.Open("../testdata/bitbucket/issue-comment-created.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -1206,7 +413,7 @@ func TestIssueCommentCreated(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -1225,184 +432,8 @@ func TestIssueCommentCreated(t *testing.T) { func TestPullRequestCreated(t *testing.T) { - payload := `{ - "actor":{ - "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" - } - } - }, - "pullrequest":{ - "id":1, - "title":"Title of pull request", - "description":"Description of pull request", - "state":"OPEN|MERGED|DECLINED", - "author":{ - "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" - } - } - }, - "source":{ - "branch":{ - "name":"branch2" - }, - "commit":{ - "hash":"d3022fc0ca3d" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "destination":{ - "branch":{ - "name":"master" - }, - "commit":{ - "hash":"ce5965ddd289" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "merge_commit":{ - "hash":"764413d85e29" - }, - "participants":[ - { - "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" - } - } - } - ], - "reviewers":[ - { - "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" - } - } - } - ], - "close_source_branch":true, - "closed_by":{ - "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" - } - } - }, - "reason":"reason for declining the PR (if applicable)", - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.205705+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" - }, - "html":{ - "href":"https://api.bitbucket.org/pullrequest_id" - } - } - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } -} -` + payload, err := os.Open("../testdata/bitbucket/pull-request-created.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -1411,7 +442,7 @@ func TestPullRequestCreated(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -1430,184 +461,8 @@ func TestPullRequestCreated(t *testing.T) { func TestPullRequestUpdated(t *testing.T) { - payload := `{ - "actor":{ - "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" - } - } - }, - "pullrequest":{ - "id":1, - "title":"Title of pull request", - "description":"Description of pull request", - "state":"OPEN|MERGED|DECLINED", - "author":{ - "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" - } - } - }, - "source":{ - "branch":{ - "name":"branch2" - }, - "commit":{ - "hash":"d3022fc0ca3d" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "destination":{ - "branch":{ - "name":"master" - }, - "commit":{ - "hash":"ce5965ddd289" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "merge_commit":{ - "hash":"764413d85e29" - }, - "participants":[ - { - "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" - } - } - } - ], - "reviewers":[ - { - "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" - } - } - } - ], - "close_source_branch":true, - "closed_by":{ - "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" - } - } - }, - "reason":"reason for declining the PR (if applicable)", - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.205705+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" - }, - "html":{ - "href":"https://api.bitbucket.org/pullrequest_id" - } - } - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } -} -` + payload, err := os.Open("../testdata/bitbucket/pull-request-updated.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -1616,7 +471,7 @@ func TestPullRequestUpdated(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -1635,203 +490,8 @@ func TestPullRequestUpdated(t *testing.T) { func TestPullRequestApproved(t *testing.T) { - payload := `{ - "actor":{ - "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" - } - } - }, - "pullrequest":{ - "id":1, - "title":"Title of pull request", - "description":"Description of pull request", - "state":"OPEN|MERGED|DECLINED", - "author":{ - "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" - } - } - }, - "source":{ - "branch":{ - "name":"branch2" - }, - "commit":{ - "hash":"d3022fc0ca3d" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "destination":{ - "branch":{ - "name":"master" - }, - "commit":{ - "hash":"ce5965ddd289" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "merge_commit":{ - "hash":"764413d85e29" - }, - "participants":[ - { - "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" - } - } - } - ], - "reviewers":[ - { - "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" - } - } - } - ], - "close_source_branch":true, - "closed_by":{ - "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" - } - } - }, - "reason":"reason for declining the PR (if applicable)", - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.205705+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" - }, - "html":{ - "href":"https://api.bitbucket.org/pullrequest_id" - } - } - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "approval":{ - "date":"2015-04-06T16:34:59.195330+00:00", - "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" - } - } - } - } -} -` + payload, err := os.Open("../testdata/bitbucket/pull-request-approved.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -1840,7 +500,7 @@ func TestPullRequestApproved(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -1859,203 +519,8 @@ func TestPullRequestApproved(t *testing.T) { func TestPullRequestApprovalRemoved(t *testing.T) { - payload := `{ - "actor":{ - "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" - } - } - }, - "pullrequest":{ - "id":1, - "title":"Title of pull request", - "description":"Description of pull request", - "state":"OPEN|MERGED|DECLINED", - "author":{ - "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" - } - } - }, - "source":{ - "branch":{ - "name":"branch2" - }, - "commit":{ - "hash":"d3022fc0ca3d" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "destination":{ - "branch":{ - "name":"master" - }, - "commit":{ - "hash":"ce5965ddd289" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "merge_commit":{ - "hash":"764413d85e29" - }, - "participants":[ - { - "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" - } - } - } - ], - "reviewers":[ - { - "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" - } - } - } - ], - "close_source_branch":true, - "closed_by":{ - "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" - } - } - }, - "reason":"reason for declining the PR (if applicable)", - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.205705+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" - }, - "html":{ - "href":"https://api.bitbucket.org/pullrequest_id" - } - } - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "approval":{ - "date":"2015-04-06T16:34:59.195330+00:00", - "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" - } - } - } - } -} -` + payload, err := os.Open("../testdata/bitbucket/pull-request-approval-removed.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -2064,7 +529,7 @@ func TestPullRequestApprovalRemoved(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -2083,184 +548,8 @@ func TestPullRequestApprovalRemoved(t *testing.T) { func TestPullRequestMerged(t *testing.T) { - payload := `{ - "actor":{ - "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" - } - } - }, - "pullrequest":{ - "id":1, - "title":"Title of pull request", - "description":"Description of pull request", - "state":"OPEN|MERGED|DECLINED", - "author":{ - "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" - } - } - }, - "source":{ - "branch":{ - "name":"branch2" - }, - "commit":{ - "hash":"d3022fc0ca3d" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "destination":{ - "branch":{ - "name":"master" - }, - "commit":{ - "hash":"ce5965ddd289" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "merge_commit":{ - "hash":"764413d85e29" - }, - "participants":[ - { - "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" - } - } - } - ], - "reviewers":[ - { - "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" - } - } - } - ], - "close_source_branch":true, - "closed_by":{ - "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" - } - } - }, - "reason":"reason for declining the PR (if applicable)", - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.205705+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" - }, - "html":{ - "href":"https://api.bitbucket.org/pullrequest_id" - } - } - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } -} -` + payload, err := os.Open("../testdata/bitbucket/pull-request-merged.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -2269,7 +558,7 @@ func TestPullRequestMerged(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -2288,184 +577,8 @@ func TestPullRequestMerged(t *testing.T) { func TestPullRequestDeclined(t *testing.T) { - payload := `{ - "actor":{ - "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" - } - } - }, - "pullrequest":{ - "id":1, - "title":"Title of pull request", - "description":"Description of pull request", - "state":"OPEN|MERGED|DECLINED", - "author":{ - "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" - } - } - }, - "source":{ - "branch":{ - "name":"branch2" - }, - "commit":{ - "hash":"d3022fc0ca3d" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "destination":{ - "branch":{ - "name":"master" - }, - "commit":{ - "hash":"ce5965ddd289" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "merge_commit":{ - "hash":"764413d85e29" - }, - "participants":[ - { - "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" - } - } - } - ], - "reviewers":[ - { - "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" - } - } - } - ], - "close_source_branch":true, - "closed_by":{ - "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" - } - } - }, - "reason":"reason for declining the PR (if applicable)", - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.205705+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" - }, - "html":{ - "href":"https://api.bitbucket.org/pullrequest_id" - } - } - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } -} -` + payload, err := os.Open("../testdata/bitbucket/pull-request-declined.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -2474,7 +587,7 @@ func TestPullRequestDeclined(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -2493,210 +606,8 @@ func TestPullRequestDeclined(t *testing.T) { func TestPullRequestCommentCreated(t *testing.T) { - payload := `{ - "actor":{ - "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":{ - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "pullrequest":{ - "id":1, - "title":"Title of pull request", - "description":"Description of pull request", - "state":"OPEN|MERGED|DECLINED", - "author":{ - "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" - } - } - }, - "source":{ - "branch":{ - "name":"branch2" - }, - "commit":{ - "hash":"d3022fc0ca3d" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "destination":{ - "branch":{ - "name":"master" - }, - "commit":{ - "hash":"ce5965ddd289" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "merge_commit":{ - "hash":"764413d85e29" - }, - "participants":[ - { - "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" - } - } - } - ], - "reviewers":[ - { - "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" - } - } - } - ], - "close_source_branch":true, - "closed_by":{ - "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" - } - } - }, - "reason":"reason for declining the PR (if applicable)", - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.205705+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" - }, - "html":{ - "href":"https://api.bitbucket.org/pullrequest_id" - } - } - }, - "comment":{ - "id":17, - "parent":{ - "id":16 - }, - "content":{ - "raw":"Comment text", - "html":"Comment text
", - "markup":"markdown" - }, - "inline":{ - "path":"path/to/file", - "from":null, - "to":10 - }, - "created_on":"2015-04-06T16:52:29.982346+00:00", - "updated_on":"2015-04-06T16:52:29.983730+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" - }, - "html":{ - "href":"https://api.bitbucket.org/comment_id" - } - } - } -} -` + payload, err := os.Open("../testdata/bitbucket/pull-request-comment-created.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -2705,7 +616,7 @@ func TestPullRequestCommentCreated(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -2724,210 +635,8 @@ func TestPullRequestCommentCreated(t *testing.T) { func TestPullRequestCommentUpdated(t *testing.T) { - payload := `{ - "actor":{ - "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":{ - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "pullrequest":{ - "id":1, - "title":"Title of pull request", - "description":"Description of pull request", - "state":"OPEN|MERGED|DECLINED", - "author":{ - "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" - } - } - }, - "source":{ - "branch":{ - "name":"branch2" - }, - "commit":{ - "hash":"d3022fc0ca3d" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "destination":{ - "branch":{ - "name":"master" - }, - "commit":{ - "hash":"ce5965ddd289" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "merge_commit":{ - "hash":"764413d85e29" - }, - "participants":[ - { - "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" - } - } - } - ], - "reviewers":[ - { - "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" - } - } - } - ], - "close_source_branch":true, - "closed_by":{ - "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" - } - } - }, - "reason":"reason for declining the PR (if applicable)", - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.205705+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" - }, - "html":{ - "href":"https://api.bitbucket.org/pullrequest_id" - } - } - }, - "comment":{ - "id":17, - "parent":{ - "id":16 - }, - "content":{ - "raw":"Comment text", - "html":"Comment text
", - "markup":"markdown" - }, - "inline":{ - "path":"path/to/file", - "from":null, - "to":10 - }, - "created_on":"2015-04-06T16:52:29.982346+00:00", - "updated_on":"2015-04-06T16:52:29.983730+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" - }, - "html":{ - "href":"https://api.bitbucket.org/comment_id" - } - } - } -} -` + payload, err := os.Open("../testdata/bitbucket/pull-request-comment-updated.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -2936,7 +645,7 @@ func TestPullRequestCommentUpdated(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") @@ -2955,210 +664,8 @@ func TestPullRequestCommentUpdated(t *testing.T) { func TestPullRequestCommentDeleted(t *testing.T) { - payload := `{ - "actor":{ - "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":{ - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - }, - "pullrequest":{ - "id":1, - "title":"Title of pull request", - "description":"Description of pull request", - "state":"OPEN|MERGED|DECLINED", - "author":{ - "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" - } - } - }, - "source":{ - "branch":{ - "name":"branch2" - }, - "commit":{ - "hash":"d3022fc0ca3d" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "destination":{ - "branch":{ - "name":"master" - }, - "commit":{ - "hash":"ce5965ddd289" - }, - "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}", - "full_name":"team_name/repo_name", - "name":"repo_name", - "scm":"git", - "is_private":true - } - }, - "merge_commit":{ - "hash":"764413d85e29" - }, - "participants":[ - { - "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" - } - } - } - ], - "reviewers":[ - { - "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" - } - } - } - ], - "close_source_branch":true, - "closed_by":{ - "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" - } - } - }, - "reason":"reason for declining the PR (if applicable)", - "created_on":"2015-04-06T15:23:38.179678+00:00", - "updated_on":"2015-04-06T15:23:38.205705+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" - }, - "html":{ - "href":"https://api.bitbucket.org/pullrequest_id" - } - } - }, - "comment":{ - "id":17, - "parent":{ - "id":16 - }, - "content":{ - "raw":"Comment text", - "html":"Comment text
", - "markup":"markdown" - }, - "inline":{ - "path":"path/to/file", - "from":null, - "to":10 - }, - "created_on":"2015-04-06T16:52:29.982346+00:00", - "updated_on":"2015-04-06T16:52:29.983730+00:00", - "links":{ - "self":{ - "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" - }, - "html":{ - "href":"https://api.bitbucket.org/comment_id" - } - } - } -} -` + payload, err := os.Open("../testdata/bitbucket/pull-request-comment-deleted.json") + Equal(t, err, nil) var parseError error var results interface{} @@ -3167,7 +674,7 @@ func TestPullRequestCommentDeleted(t *testing.T) { }) defer server.Close() - req, err := http.NewRequest(http.MethodPost, server.URL+path, bytes.NewBuffer([]byte(payload))) + req, err := http.NewRequest(http.MethodPost, server.URL+path, payload) Equal(t, err, nil) req.Header.Set("Content-Type", "application/json") req.Header.Set("X-Hook-UUID", "MY_UUID") diff --git a/testdata/bitbucket/commit-comment-created.json b/testdata/bitbucket/commit-comment-created.json new file mode 100644 index 0000000..d95fa80 --- /dev/null +++ b/testdata/bitbucket/commit-comment-created.json @@ -0,0 +1,65 @@ +{ + "actor":{ + "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" + } + } + }, + "comment":{ + "id":17, + "parent":{ + "id":16 + }, + "content":{ + "raw":"Comment text", + "html":"Comment text
", + "markup":"markdown" + }, + "inline":{ + "path":"path/to/file", + "from":null, + "to":10 + }, + "created_on":"2015-04-06T16:52:29.982346+00:00", + "updated_on":"2015-04-06T16:52:29.983730+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" + }, + "html":{ + "href":"https://api.bitbucket.org/comment_id" + } + } + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "commit":{ + "hash":"d3022fc0ca3d65c7f6654eea129d6bf0cf0ee08e" + } +} \ No newline at end of file diff --git a/testdata/bitbucket/issue-comment-created.json b/testdata/bitbucket/issue-comment-created.json new file mode 100644 index 0000000..e80d6e5 --- /dev/null +++ b/testdata/bitbucket/issue-comment-created.json @@ -0,0 +1,91 @@ +{ + "actor":{ + "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":{ + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "issue":{ + "id":1, + "component":"component", + "title":"Issue title", + "content":{ + "raw":"Issue description", + "html":"Issue description
", + "markup":"markdown" + }, + "priority":"trivial|minor|major|critical|blocker", + "state":"new|open|on hold|resolved|duplicate|invalid|wontfix|closed", + "type":"bug|enhancement|proposal|task", + "milestone":{ + "name":"milestone 1" + }, + "version":{ + "name":"version 1" + }, + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.179678+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/issues/issue_id" + }, + "html":{ + "href":"https://api.bitbucket.org/issue_id" + } + } + }, + "comment":{ + "id":17, + "parent":{ + "id":16 + }, + "content":{ + "raw":"Comment text", + "html":"Comment text
", + "markup":"markdown" + }, + "inline":{ + "path":"path/to/file", + "from":null, + "to":10 + }, + "created_on":"2015-04-06T16:52:29.982346+00:00", + "updated_on":"2015-04-06T16:52:29.983730+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" + }, + "html":{ + "href":"https://api.bitbucket.org/comment_id" + } + } + } +} \ No newline at end of file diff --git a/testdata/bitbucket/issue-created.json b/testdata/bitbucket/issue-created.json new file mode 100644 index 0000000..cbd5ca9 --- /dev/null +++ b/testdata/bitbucket/issue-created.json @@ -0,0 +1,65 @@ +{ + "actor":{ + "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" + } + } + }, + "issue":{ + "id":1, + "component":"component", + "title":"Issue title", + "content":{ + "raw":"Issue description", + "html":"Issue description
", + "markup":"markdown" + }, + "priority":"trivial|minor|major|critical|blocker", + "state":"new|open|on hold|resolved|duplicate|invalid|wontfix|closed", + "type":"bug|enhancement|proposal|task", + "milestone":{ + "name":"milestone 1" + }, + "version":{ + "name":"version 1" + }, + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.179678+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/issues/issue_id" + }, + "html":{ + "href":"https://api.bitbucket.org/issue_id" + } + } + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } +} \ No newline at end of file diff --git a/testdata/bitbucket/issue-updated.json b/testdata/bitbucket/issue-updated.json new file mode 100644 index 0000000..1323ac2 --- /dev/null +++ b/testdata/bitbucket/issue-updated.json @@ -0,0 +1,97 @@ +{ + "actor":{ + "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" + } + } + }, + "issue":{ + "id":1, + "component":"component", + "title":"Issue title", + "content":{ + "raw":"Issue description", + "html":"Issue description
", + "markup":"markdown" + }, + "priority":"trivial|minor|major|critical|blocker", + "state":"new|open|on hold|resolved|duplicate|invalid|wontfix|closed", + "type":"bug|enhancement|proposal|task", + "milestone":{ + "name":"milestone 1" + }, + "version":{ + "name":"version 1" + }, + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.179678+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/issues/issue_id" + }, + "html":{ + "href":"https://api.bitbucket.org/issue_id" + } + } + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "comment":{ + "id":17, + "parent":{ + "id":16 + }, + "content":{ + "raw":"Comment text", + "html":"Comment text
", + "markup":"markdown" + }, + "inline":{ + "path":"path/to/file", + "from":null, + "to":10 + }, + "created_on":"2015-04-06T16:52:29.982346+00:00", + "updated_on":"2015-04-06T16:52:29.983730+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" + }, + "html":{ + "href":"https://api.bitbucket.org/comment_id" + } + } + }, + "changes":{ + "status":{ + "old":"open", + "new":"on hold" + } + } +} \ No newline at end of file diff --git a/testdata/bitbucket/pull-request-approval-removed.json b/testdata/bitbucket/pull-request-approval-removed.json new file mode 100644 index 0000000..d7fe2f1 --- /dev/null +++ b/testdata/bitbucket/pull-request-approval-removed.json @@ -0,0 +1,196 @@ +{ + "actor":{ + "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" + } + } + }, + "pullrequest":{ + "id":1, + "title":"Title of pull request", + "description":"Description of pull request", + "state":"OPEN|MERGED|DECLINED", + "author":{ + "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" + } + } + }, + "source":{ + "branch":{ + "name":"branch2" + }, + "commit":{ + "hash":"d3022fc0ca3d" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "destination":{ + "branch":{ + "name":"master" + }, + "commit":{ + "hash":"ce5965ddd289" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "merge_commit":{ + "hash":"764413d85e29" + }, + "participants":[ + { + "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" + } + } + } + ], + "reviewers":[ + { + "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" + } + } + } + ], + "close_source_branch":true, + "closed_by":{ + "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" + } + } + }, + "reason":"reason for declining the PR (if applicable)", + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.205705+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" + }, + "html":{ + "href":"https://api.bitbucket.org/pullrequest_id" + } + } + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "approval":{ + "date":"2015-04-06T16:34:59.195330+00:00", + "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" + } + } + } + } +} \ No newline at end of file diff --git a/testdata/bitbucket/pull-request-approved.json b/testdata/bitbucket/pull-request-approved.json new file mode 100644 index 0000000..d7fe2f1 --- /dev/null +++ b/testdata/bitbucket/pull-request-approved.json @@ -0,0 +1,196 @@ +{ + "actor":{ + "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" + } + } + }, + "pullrequest":{ + "id":1, + "title":"Title of pull request", + "description":"Description of pull request", + "state":"OPEN|MERGED|DECLINED", + "author":{ + "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" + } + } + }, + "source":{ + "branch":{ + "name":"branch2" + }, + "commit":{ + "hash":"d3022fc0ca3d" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "destination":{ + "branch":{ + "name":"master" + }, + "commit":{ + "hash":"ce5965ddd289" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "merge_commit":{ + "hash":"764413d85e29" + }, + "participants":[ + { + "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" + } + } + } + ], + "reviewers":[ + { + "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" + } + } + } + ], + "close_source_branch":true, + "closed_by":{ + "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" + } + } + }, + "reason":"reason for declining the PR (if applicable)", + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.205705+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" + }, + "html":{ + "href":"https://api.bitbucket.org/pullrequest_id" + } + } + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "approval":{ + "date":"2015-04-06T16:34:59.195330+00:00", + "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" + } + } + } + } +} \ No newline at end of file diff --git a/testdata/bitbucket/pull-request-comment-created.json b/testdata/bitbucket/pull-request-comment-created.json new file mode 100644 index 0000000..413b631 --- /dev/null +++ b/testdata/bitbucket/pull-request-comment-created.json @@ -0,0 +1,203 @@ +{ + "actor":{ + "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":{ + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "pullrequest":{ + "id":1, + "title":"Title of pull request", + "description":"Description of pull request", + "state":"OPEN|MERGED|DECLINED", + "author":{ + "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" + } + } + }, + "source":{ + "branch":{ + "name":"branch2" + }, + "commit":{ + "hash":"d3022fc0ca3d" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "destination":{ + "branch":{ + "name":"master" + }, + "commit":{ + "hash":"ce5965ddd289" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "merge_commit":{ + "hash":"764413d85e29" + }, + "participants":[ + { + "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" + } + } + } + ], + "reviewers":[ + { + "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" + } + } + } + ], + "close_source_branch":true, + "closed_by":{ + "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" + } + } + }, + "reason":"reason for declining the PR (if applicable)", + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.205705+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" + }, + "html":{ + "href":"https://api.bitbucket.org/pullrequest_id" + } + } + }, + "comment":{ + "id":17, + "parent":{ + "id":16 + }, + "content":{ + "raw":"Comment text", + "html":"Comment text
", + "markup":"markdown" + }, + "inline":{ + "path":"path/to/file", + "from":null, + "to":10 + }, + "created_on":"2015-04-06T16:52:29.982346+00:00", + "updated_on":"2015-04-06T16:52:29.983730+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" + }, + "html":{ + "href":"https://api.bitbucket.org/comment_id" + } + } + } +} \ No newline at end of file diff --git a/testdata/bitbucket/pull-request-comment-deleted.json b/testdata/bitbucket/pull-request-comment-deleted.json new file mode 100644 index 0000000..413b631 --- /dev/null +++ b/testdata/bitbucket/pull-request-comment-deleted.json @@ -0,0 +1,203 @@ +{ + "actor":{ + "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":{ + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "pullrequest":{ + "id":1, + "title":"Title of pull request", + "description":"Description of pull request", + "state":"OPEN|MERGED|DECLINED", + "author":{ + "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" + } + } + }, + "source":{ + "branch":{ + "name":"branch2" + }, + "commit":{ + "hash":"d3022fc0ca3d" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "destination":{ + "branch":{ + "name":"master" + }, + "commit":{ + "hash":"ce5965ddd289" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "merge_commit":{ + "hash":"764413d85e29" + }, + "participants":[ + { + "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" + } + } + } + ], + "reviewers":[ + { + "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" + } + } + } + ], + "close_source_branch":true, + "closed_by":{ + "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" + } + } + }, + "reason":"reason for declining the PR (if applicable)", + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.205705+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" + }, + "html":{ + "href":"https://api.bitbucket.org/pullrequest_id" + } + } + }, + "comment":{ + "id":17, + "parent":{ + "id":16 + }, + "content":{ + "raw":"Comment text", + "html":"Comment text
", + "markup":"markdown" + }, + "inline":{ + "path":"path/to/file", + "from":null, + "to":10 + }, + "created_on":"2015-04-06T16:52:29.982346+00:00", + "updated_on":"2015-04-06T16:52:29.983730+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" + }, + "html":{ + "href":"https://api.bitbucket.org/comment_id" + } + } + } +} \ No newline at end of file diff --git a/testdata/bitbucket/pull-request-comment-updated.json b/testdata/bitbucket/pull-request-comment-updated.json new file mode 100644 index 0000000..413b631 --- /dev/null +++ b/testdata/bitbucket/pull-request-comment-updated.json @@ -0,0 +1,203 @@ +{ + "actor":{ + "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":{ + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "pullrequest":{ + "id":1, + "title":"Title of pull request", + "description":"Description of pull request", + "state":"OPEN|MERGED|DECLINED", + "author":{ + "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" + } + } + }, + "source":{ + "branch":{ + "name":"branch2" + }, + "commit":{ + "hash":"d3022fc0ca3d" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "destination":{ + "branch":{ + "name":"master" + }, + "commit":{ + "hash":"ce5965ddd289" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "merge_commit":{ + "hash":"764413d85e29" + }, + "participants":[ + { + "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" + } + } + } + ], + "reviewers":[ + { + "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" + } + } + } + ], + "close_source_branch":true, + "closed_by":{ + "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" + } + } + }, + "reason":"reason for declining the PR (if applicable)", + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.205705+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" + }, + "html":{ + "href":"https://api.bitbucket.org/pullrequest_id" + } + } + }, + "comment":{ + "id":17, + "parent":{ + "id":16 + }, + "content":{ + "raw":"Comment text", + "html":"Comment text
", + "markup":"markdown" + }, + "inline":{ + "path":"path/to/file", + "from":null, + "to":10 + }, + "created_on":"2015-04-06T16:52:29.982346+00:00", + "updated_on":"2015-04-06T16:52:29.983730+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/comments/comment_id" + }, + "html":{ + "href":"https://api.bitbucket.org/comment_id" + } + } + } +} \ No newline at end of file diff --git a/testdata/bitbucket/pull-request-created.json b/testdata/bitbucket/pull-request-created.json new file mode 100644 index 0000000..a5a8c42 --- /dev/null +++ b/testdata/bitbucket/pull-request-created.json @@ -0,0 +1,177 @@ +{ + "actor":{ + "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" + } + } + }, + "pullrequest":{ + "id":1, + "title":"Title of pull request", + "description":"Description of pull request", + "state":"OPEN|MERGED|DECLINED", + "author":{ + "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" + } + } + }, + "source":{ + "branch":{ + "name":"branch2" + }, + "commit":{ + "hash":"d3022fc0ca3d" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "destination":{ + "branch":{ + "name":"master" + }, + "commit":{ + "hash":"ce5965ddd289" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "merge_commit":{ + "hash":"764413d85e29" + }, + "participants":[ + { + "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" + } + } + } + ], + "reviewers":[ + { + "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" + } + } + } + ], + "close_source_branch":true, + "closed_by":{ + "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" + } + } + }, + "reason":"reason for declining the PR (if applicable)", + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.205705+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" + }, + "html":{ + "href":"https://api.bitbucket.org/pullrequest_id" + } + } + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } +} \ No newline at end of file diff --git a/testdata/bitbucket/pull-request-declined.json b/testdata/bitbucket/pull-request-declined.json new file mode 100644 index 0000000..a5a8c42 --- /dev/null +++ b/testdata/bitbucket/pull-request-declined.json @@ -0,0 +1,177 @@ +{ + "actor":{ + "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" + } + } + }, + "pullrequest":{ + "id":1, + "title":"Title of pull request", + "description":"Description of pull request", + "state":"OPEN|MERGED|DECLINED", + "author":{ + "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" + } + } + }, + "source":{ + "branch":{ + "name":"branch2" + }, + "commit":{ + "hash":"d3022fc0ca3d" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "destination":{ + "branch":{ + "name":"master" + }, + "commit":{ + "hash":"ce5965ddd289" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "merge_commit":{ + "hash":"764413d85e29" + }, + "participants":[ + { + "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" + } + } + } + ], + "reviewers":[ + { + "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" + } + } + } + ], + "close_source_branch":true, + "closed_by":{ + "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" + } + } + }, + "reason":"reason for declining the PR (if applicable)", + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.205705+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" + }, + "html":{ + "href":"https://api.bitbucket.org/pullrequest_id" + } + } + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } +} \ No newline at end of file diff --git a/testdata/bitbucket/pull-request-merged.json b/testdata/bitbucket/pull-request-merged.json new file mode 100644 index 0000000..a5a8c42 --- /dev/null +++ b/testdata/bitbucket/pull-request-merged.json @@ -0,0 +1,177 @@ +{ + "actor":{ + "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" + } + } + }, + "pullrequest":{ + "id":1, + "title":"Title of pull request", + "description":"Description of pull request", + "state":"OPEN|MERGED|DECLINED", + "author":{ + "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" + } + } + }, + "source":{ + "branch":{ + "name":"branch2" + }, + "commit":{ + "hash":"d3022fc0ca3d" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "destination":{ + "branch":{ + "name":"master" + }, + "commit":{ + "hash":"ce5965ddd289" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "merge_commit":{ + "hash":"764413d85e29" + }, + "participants":[ + { + "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" + } + } + } + ], + "reviewers":[ + { + "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" + } + } + } + ], + "close_source_branch":true, + "closed_by":{ + "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" + } + } + }, + "reason":"reason for declining the PR (if applicable)", + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.205705+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" + }, + "html":{ + "href":"https://api.bitbucket.org/pullrequest_id" + } + } + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } +} \ No newline at end of file diff --git a/testdata/bitbucket/pull-request-updated.json b/testdata/bitbucket/pull-request-updated.json new file mode 100644 index 0000000..a5a8c42 --- /dev/null +++ b/testdata/bitbucket/pull-request-updated.json @@ -0,0 +1,177 @@ +{ + "actor":{ + "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" + } + } + }, + "pullrequest":{ + "id":1, + "title":"Title of pull request", + "description":"Description of pull request", + "state":"OPEN|MERGED|DECLINED", + "author":{ + "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" + } + } + }, + "source":{ + "branch":{ + "name":"branch2" + }, + "commit":{ + "hash":"d3022fc0ca3d" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "destination":{ + "branch":{ + "name":"master" + }, + "commit":{ + "hash":"ce5965ddd289" + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } + }, + "merge_commit":{ + "hash":"764413d85e29" + }, + "participants":[ + { + "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" + } + } + } + ], + "reviewers":[ + { + "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" + } + } + } + ], + "close_source_branch":true, + "closed_by":{ + "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" + } + } + }, + "reason":"reason for declining the PR (if applicable)", + "created_on":"2015-04-06T15:23:38.179678+00:00", + "updated_on":"2015-04-06T15:23:38.205705+00:00", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/api/2.0/pullrequests/pullrequest_id" + }, + "html":{ + "href":"https://api.bitbucket.org/pullrequest_id" + } + } + }, + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } +} \ No newline at end of file diff --git a/testdata/bitbucket/repo-commit-status-created.json b/testdata/bitbucket/repo-commit-status-created.json new file mode 100644 index 0000000..39c94a1 --- /dev/null +++ b/testdata/bitbucket/repo-commit-status-created.json @@ -0,0 +1,54 @@ +{ + "actor":{ + "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":{ + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "commit_status":{ + "name":"Unit Tests (Python)", + "description":"Build started", + "state":"INPROGRESS", + "key":"mybuildtool", + "url":"https://my-build-tool.com/builds/MY-PROJECT/BUILD-777", + "type":"build", + "created_on":"2015-11-19T20:37:35.547563+00:00", + "updated_on":"2015-11-19T20:37:35.547563+00:00", + "links":{ + "commit":{ + "href":"http://api.bitbucket.org/2.0/repositories/tk/test/commit/9fec847784abb10b2fa567ee63b85bd238955d0e" + }, + "self":{ + "href":"http://api.bitbucket.org/2.0/repositories/tk/test/commit/9fec847784abb10b2fa567ee63b85bd238955d0e/statuses/build/mybuildtool" + } + } + } +} \ No newline at end of file diff --git a/testdata/bitbucket/repo-commit-status-updated.json b/testdata/bitbucket/repo-commit-status-updated.json new file mode 100644 index 0000000..4d0f8a1 --- /dev/null +++ b/testdata/bitbucket/repo-commit-status-updated.json @@ -0,0 +1,54 @@ +{ + "actor":{ + "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":{ + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "commit_status":{ + "name":"Unit Tests (Python)", + "description":"All tests passed", + "state":"SUCCESSFUL", + "key":"mybuildtool", + "url":"https://my-build-tool.com/builds/MY-PROJECT/BUILD-792", + "type":"build", + "created_on":"2015-11-19T20:37:35.547563+00:00", + "updated_on":"2015-11-20T08:01:16.433108+00:00", + "links":{ + "commit":{ + "href":"http://api.bitbucket.org/2.0/repositories/tk/test/commit/9fec847784abb10b2fa567ee63b85bd238955d0e" + }, + "self":{ + "href":"http://api.bitbucket.org/2.0/repositories/tk/test/commit/9fec847784abb10b2fa567ee63b85bd238955d0e/statuses/build/mybuildtool" + } + } + } +} \ No newline at end of file diff --git a/testdata/bitbucket/repo-fork.json b/testdata/bitbucket/repo-fork.json new file mode 100644 index 0000000..5e2be9a --- /dev/null +++ b/testdata/bitbucket/repo-fork.json @@ -0,0 +1,54 @@ +{ + "actor":{ + "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":{ + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "fork":{ + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + } +} \ No newline at end of file diff --git a/testdata/bitbucket/repo-push.json b/testdata/bitbucket/repo-push.json new file mode 100644 index 0000000..fa7d0fe --- /dev/null +++ b/testdata/bitbucket/repo-push.json @@ -0,0 +1,206 @@ +{ + "actor":{ + "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":{ + "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}", + "full_name":"team_name/repo_name", + "name":"repo_name", + "scm":"git", + "is_private":true + }, + "push":{ + "changes":[ + { + "new":{ + "type":"branch", + "name":"name-of-branch", + "target":{ + "type":"commit", + "hash":"709d658dc5b6d6afcd46049c2f332ee3f515a67d", + "author":{ + "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" + } + } + }, + "message":"new commit message\n", + "date":"2015-06-09T03:34:49+00:00", + "parents":[ + { + "type":"commit", + "hash":"1e65c05c1d5171631d92438a13901ca7dae9618c", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commit/8cbbd65829c7ad834a97841e0defc965718036a0" + }, + "html":{ + "href":"https://bitbucket.org/user_name/repo_name/commits/8cbbd65829c7ad834a97841e0defc965718036a0" + } + } + } + ], + "links":{ + "self":{ + "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commit/c4b2b7914156a878aa7c9da452a09fb50c2091f2" + }, + "html":{ + "href":"https://bitbucket.org/user_name/repo_name/commits/c4b2b7914156a878aa7c9da452a09fb50c2091f2" + } + } + }, + "links":{ + "self":{ + "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/refs/branches/master" + }, + "commits":{ + "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commits/master" + }, + "html":{ + "href":"https://bitbucket.org/user_name/repo_name/branch/master" + } + } + }, + "old":{ + "type":"branch", + "name":"name-of-branch", + "target":{ + "type":"commit", + "hash":"1e65c05c1d5171631d92438a13901ca7dae9618c", + "author":{ + "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" + } + } + }, + "message":"old commit message\n", + "date":"2015-06-08T21:34:56+00:00", + "parents":[ + { + "type":"commit", + "hash":"e0d0c2041e09746be5ce4b55067d5a8e3098c843", + "links":{ + "self":{ + "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commit/9c4a3452da3bc4f37af5a6bb9c784246f44406f7" + }, + "html":{ + "href":"https://bitbucket.org/user_name/repo_name/commits/9c4a3452da3bc4f37af5a6bb9c784246f44406f7" + } + } + } + ], + "links":{ + "self":{ + "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commit/b99ea6dad8f416e57c5ca78c1ccef590600d841b" + }, + "html":{ + "href":"https://bitbucket.org/user_name/repo_name/commits/b99ea6dad8f416e57c5ca78c1ccef590600d841b" + } + } + }, + "links":{ + "self":{ + "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/refs/branches/master" + }, + "commits":{ + "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commits/master" + }, + "html":{ + "href":"https://bitbucket.org/user_name/repo_name/branch/master" + } + } + }, + "links":{ + "html":{ + "href":"https://bitbucket.org/user_name/repo_name/branches/compare/c4b2b7914156a878aa7c9da452a09fb50c2091f2..b99ea6dad8f416e57c5ca78c1ccef590600d841b" + }, + "diff":{ + "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/diff/c4b2b7914156a878aa7c9da452a09fb50c2091f2..b99ea6dad8f416e57c5ca78c1ccef590600d841b" + }, + "commits":{ + "href":"https://api.bitbucket.org/2.0/repositories/user_name/repo_name/commits?include=c4b2b7914156a878aa7c9da452a09fb50c2091f2&exclude=b99ea6dad8f416e57c5ca78c1ccef590600d841b" + } + }, + "created":false, + "forced":false, + "closed":false, + "commits":[ + { + "hash":"03f4a7270240708834de475bcf21532d6134777e", + "type":"commit", + "message":"commit message\n", + "author":{ + "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" + } + } + }, + "links":{ + "self":{ + "href":"https://api.bitbucket.org/2.0/repositories/user/repo/commit/03f4a7270240708834de475bcf21532d6134777e" + }, + "html":{ + "href":"https://bitbucket.org/user/repo/commits/03f4a7270240708834de475bcf21532d6134777e" + } + } + } + ], + "truncated":false + } + ] + } +} \ No newline at end of file diff --git a/testdata/bitbucket/repo-updated.json b/testdata/bitbucket/repo-updated.json new file mode 100644 index 0000000..4e62d1b --- /dev/null +++ b/testdata/bitbucket/repo-updated.json @@ -0,0 +1,116 @@ +{ + "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" + } + } +} \ No newline at end of file