From 7b947ebdbd3b6bcd9de10ea4255bfa11fc88695c Mon Sep 17 00:00:00 2001 From: Frederic Guillot Date: Sat, 20 Jun 2015 19:21:35 -0400 Subject: Allow sync of Github comments without common username and add unit tests --- tests/units/fixtures/github_comment_created.json | 187 +++++++++++++++++++++ tests/units/fixtures/github_issue_assigned.json | 196 ++++++++++++++++++++++ tests/units/fixtures/github_issue_closed.json | 159 ++++++++++++++++++ tests/units/fixtures/github_issue_labeled.json | 170 +++++++++++++++++++ tests/units/fixtures/github_issue_opened.json | 159 ++++++++++++++++++ tests/units/fixtures/github_issue_reopened.json | 159 ++++++++++++++++++ tests/units/fixtures/github_issue_unassigned.json | 178 ++++++++++++++++++++ tests/units/fixtures/github_issue_unlabeled.json | 164 ++++++++++++++++++ tests/units/fixtures/github_push.json | 165 ++++++++++++++++++ 9 files changed, 1537 insertions(+) create mode 100644 tests/units/fixtures/github_comment_created.json create mode 100644 tests/units/fixtures/github_issue_assigned.json create mode 100644 tests/units/fixtures/github_issue_closed.json create mode 100644 tests/units/fixtures/github_issue_labeled.json create mode 100644 tests/units/fixtures/github_issue_opened.json create mode 100644 tests/units/fixtures/github_issue_reopened.json create mode 100644 tests/units/fixtures/github_issue_unassigned.json create mode 100644 tests/units/fixtures/github_issue_unlabeled.json create mode 100644 tests/units/fixtures/github_push.json (limited to 'tests/units/fixtures') diff --git a/tests/units/fixtures/github_comment_created.json b/tests/units/fixtures/github_comment_created.json new file mode 100644 index 00000000..bb601c7c --- /dev/null +++ b/tests/units/fixtures/github_comment_created.json @@ -0,0 +1,187 @@ +{ + "action": "created", + "issue": { + "url": "https://api.github.com/repos/kanboardapp/webhook/issues/3", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/labels{/name}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/comments", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/events", + "html_url": "https://github.com/kanboardapp/webhook/issues/3", + "id": 89823399, + "number": 3, + "title": "test with ngrok", + "user": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "labels": [], + "state": "open", + "locked": false, + "assignee": null, + "milestone": null, + "comments": 1, + "created_at": "2015-06-20T21:58:20Z", + "updated_at": "2015-06-20T22:45:51Z", + "closed_at": null, + "body": "plop" + }, + "comment": { + "url": "https://api.github.com/repos/kanboardapp/webhook/issues/comments/113834672", + "html_url": "https://github.com/kanboardapp/webhook/issues/3#issuecomment-113834672", + "issue_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3", + "id": 113834672, + "user": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "created_at": "2015-06-20T22:45:51Z", + "updated_at": "2015-06-20T22:45:51Z", + "body": "test" + }, + "repository": { + "id": 25744941, + "name": "webhook", + "full_name": "kanboardapp/webhook", + "owner": { + "login": "kanboardapp", + "id": 8738076, + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/kanboardapp", + "html_url": "https://github.com/kanboardapp", + "followers_url": "https://api.github.com/users/kanboardapp/followers", + "following_url": "https://api.github.com/users/kanboardapp/following{/other_user}", + "gists_url": "https://api.github.com/users/kanboardapp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kanboardapp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kanboardapp/subscriptions", + "organizations_url": "https://api.github.com/users/kanboardapp/orgs", + "repos_url": "https://api.github.com/users/kanboardapp/repos", + "events_url": "https://api.github.com/users/kanboardapp/events{/privacy}", + "received_events_url": "https://api.github.com/users/kanboardapp/received_events", + "type": "Organization", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/kanboardapp/webhook", + "description": "", + "fork": false, + "url": "https://api.github.com/repos/kanboardapp/webhook", + "forks_url": "https://api.github.com/repos/kanboardapp/webhook/forks", + "keys_url": "https://api.github.com/repos/kanboardapp/webhook/keys{/key_id}", + "collaborators_url": "https://api.github.com/repos/kanboardapp/webhook/collaborators{/collaborator}", + "teams_url": "https://api.github.com/repos/kanboardapp/webhook/teams", + "hooks_url": "https://api.github.com/repos/kanboardapp/webhook/hooks", + "issue_events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/events{/number}", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/events", + "assignees_url": "https://api.github.com/repos/kanboardapp/webhook/assignees{/user}", + "branches_url": "https://api.github.com/repos/kanboardapp/webhook/branches{/branch}", + "tags_url": "https://api.github.com/repos/kanboardapp/webhook/tags", + "blobs_url": "https://api.github.com/repos/kanboardapp/webhook/git/blobs{/sha}", + "git_tags_url": "https://api.github.com/repos/kanboardapp/webhook/git/tags{/sha}", + "git_refs_url": "https://api.github.com/repos/kanboardapp/webhook/git/refs{/sha}", + "trees_url": "https://api.github.com/repos/kanboardapp/webhook/git/trees{/sha}", + "statuses_url": "https://api.github.com/repos/kanboardapp/webhook/statuses/{sha}", + "languages_url": "https://api.github.com/repos/kanboardapp/webhook/languages", + "stargazers_url": "https://api.github.com/repos/kanboardapp/webhook/stargazers", + "contributors_url": "https://api.github.com/repos/kanboardapp/webhook/contributors", + "subscribers_url": "https://api.github.com/repos/kanboardapp/webhook/subscribers", + "subscription_url": "https://api.github.com/repos/kanboardapp/webhook/subscription", + "commits_url": "https://api.github.com/repos/kanboardapp/webhook/commits{/sha}", + "git_commits_url": "https://api.github.com/repos/kanboardapp/webhook/git/commits{/sha}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/comments{/number}", + "issue_comment_url": "https://api.github.com/repos/kanboardapp/webhook/issues/comments{/number}", + "contents_url": "https://api.github.com/repos/kanboardapp/webhook/contents/{+path}", + "compare_url": "https://api.github.com/repos/kanboardapp/webhook/compare/{base}...{head}", + "merges_url": "https://api.github.com/repos/kanboardapp/webhook/merges", + "archive_url": "https://api.github.com/repos/kanboardapp/webhook/{archive_format}{/ref}", + "downloads_url": "https://api.github.com/repos/kanboardapp/webhook/downloads", + "issues_url": "https://api.github.com/repos/kanboardapp/webhook/issues{/number}", + "pulls_url": "https://api.github.com/repos/kanboardapp/webhook/pulls{/number}", + "milestones_url": "https://api.github.com/repos/kanboardapp/webhook/milestones{/number}", + "notifications_url": "https://api.github.com/repos/kanboardapp/webhook/notifications{?since,all,participating}", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/labels{/name}", + "releases_url": "https://api.github.com/repos/kanboardapp/webhook/releases{/id}", + "created_at": "2014-10-25T20:10:38Z", + "updated_at": "2014-10-25T20:10:38Z", + "pushed_at": "2014-10-25T22:02:01Z", + "git_url": "git://github.com/kanboardapp/webhook.git", + "ssh_url": "git@github.com:kanboardapp/webhook.git", + "clone_url": "https://github.com/kanboardapp/webhook.git", + "svn_url": "https://github.com/kanboardapp/webhook", + "homepage": null, + "size": 124, + "stargazers_count": 0, + "watchers_count": 0, + "language": null, + "has_issues": true, + "has_downloads": true, + "has_wiki": true, + "has_pages": false, + "forks_count": 0, + "mirror_url": null, + "open_issues_count": 3, + "forks": 0, + "open_issues": 3, + "watchers": 0, + "default_branch": "master" + }, + "organization": { + "login": "kanboardapp", + "id": 8738076, + "url": "https://api.github.com/orgs/kanboardapp", + "repos_url": "https://api.github.com/orgs/kanboardapp/repos", + "events_url": "https://api.github.com/orgs/kanboardapp/events", + "members_url": "https://api.github.com/orgs/kanboardapp/members{/member}", + "public_members_url": "https://api.github.com/orgs/kanboardapp/public_members{/member}", + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "description": null + }, + "sender": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + } +} \ No newline at end of file diff --git a/tests/units/fixtures/github_issue_assigned.json b/tests/units/fixtures/github_issue_assigned.json new file mode 100644 index 00000000..9125e976 --- /dev/null +++ b/tests/units/fixtures/github_issue_assigned.json @@ -0,0 +1,196 @@ +{ + "action": "assigned", + "issue": { + "url": "https://api.github.com/repos/kanboardapp/webhook/issues/3", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/labels{/name}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/comments", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/events", + "html_url": "https://github.com/kanboardapp/webhook/issues/3", + "id": 89823399, + "number": 3, + "title": "test with ngrok", + "user": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "labels": [], + "state": "open", + "locked": false, + "assignee": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "milestone": null, + "comments": 0, + "created_at": "2015-06-20T21:58:20Z", + "updated_at": "2015-06-20T22:12:15Z", + "closed_at": null, + "body": "plop" + }, + "assignee": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "repository": { + "id": 25744941, + "name": "webhook", + "full_name": "kanboardapp/webhook", + "owner": { + "login": "kanboardapp", + "id": 8738076, + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/kanboardapp", + "html_url": "https://github.com/kanboardapp", + "followers_url": "https://api.github.com/users/kanboardapp/followers", + "following_url": "https://api.github.com/users/kanboardapp/following{/other_user}", + "gists_url": "https://api.github.com/users/kanboardapp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kanboardapp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kanboardapp/subscriptions", + "organizations_url": "https://api.github.com/users/kanboardapp/orgs", + "repos_url": "https://api.github.com/users/kanboardapp/repos", + "events_url": "https://api.github.com/users/kanboardapp/events{/privacy}", + "received_events_url": "https://api.github.com/users/kanboardapp/received_events", + "type": "Organization", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/kanboardapp/webhook", + "description": "", + "fork": false, + "url": "https://api.github.com/repos/kanboardapp/webhook", + "forks_url": "https://api.github.com/repos/kanboardapp/webhook/forks", + "keys_url": "https://api.github.com/repos/kanboardapp/webhook/keys{/key_id}", + "collaborators_url": "https://api.github.com/repos/kanboardapp/webhook/collaborators{/collaborator}", + "teams_url": "https://api.github.com/repos/kanboardapp/webhook/teams", + "hooks_url": "https://api.github.com/repos/kanboardapp/webhook/hooks", + "issue_events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/events{/number}", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/events", + "assignees_url": "https://api.github.com/repos/kanboardapp/webhook/assignees{/user}", + "branches_url": "https://api.github.com/repos/kanboardapp/webhook/branches{/branch}", + "tags_url": "https://api.github.com/repos/kanboardapp/webhook/tags", + "blobs_url": "https://api.github.com/repos/kanboardapp/webhook/git/blobs{/sha}", + "git_tags_url": "https://api.github.com/repos/kanboardapp/webhook/git/tags{/sha}", + "git_refs_url": "https://api.github.com/repos/kanboardapp/webhook/git/refs{/sha}", + "trees_url": "https://api.github.com/repos/kanboardapp/webhook/git/trees{/sha}", + "statuses_url": "https://api.github.com/repos/kanboardapp/webhook/statuses/{sha}", + "languages_url": "https://api.github.com/repos/kanboardapp/webhook/languages", + "stargazers_url": "https://api.github.com/repos/kanboardapp/webhook/stargazers", + "contributors_url": "https://api.github.com/repos/kanboardapp/webhook/contributors", + "subscribers_url": "https://api.github.com/repos/kanboardapp/webhook/subscribers", + "subscription_url": "https://api.github.com/repos/kanboardapp/webhook/subscription", + "commits_url": "https://api.github.com/repos/kanboardapp/webhook/commits{/sha}", + "git_commits_url": "https://api.github.com/repos/kanboardapp/webhook/git/commits{/sha}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/comments{/number}", + "issue_comment_url": "https://api.github.com/repos/kanboardapp/webhook/issues/comments{/number}", + "contents_url": "https://api.github.com/repos/kanboardapp/webhook/contents/{+path}", + "compare_url": "https://api.github.com/repos/kanboardapp/webhook/compare/{base}...{head}", + "merges_url": "https://api.github.com/repos/kanboardapp/webhook/merges", + "archive_url": "https://api.github.com/repos/kanboardapp/webhook/{archive_format}{/ref}", + "downloads_url": "https://api.github.com/repos/kanboardapp/webhook/downloads", + "issues_url": "https://api.github.com/repos/kanboardapp/webhook/issues{/number}", + "pulls_url": "https://api.github.com/repos/kanboardapp/webhook/pulls{/number}", + "milestones_url": "https://api.github.com/repos/kanboardapp/webhook/milestones{/number}", + "notifications_url": "https://api.github.com/repos/kanboardapp/webhook/notifications{?since,all,participating}", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/labels{/name}", + "releases_url": "https://api.github.com/repos/kanboardapp/webhook/releases{/id}", + "created_at": "2014-10-25T20:10:38Z", + "updated_at": "2014-10-25T20:10:38Z", + "pushed_at": "2014-10-25T22:02:01Z", + "git_url": "git://github.com/kanboardapp/webhook.git", + "ssh_url": "git@github.com:kanboardapp/webhook.git", + "clone_url": "https://github.com/kanboardapp/webhook.git", + "svn_url": "https://github.com/kanboardapp/webhook", + "homepage": null, + "size": 124, + "stargazers_count": 0, + "watchers_count": 0, + "language": null, + "has_issues": true, + "has_downloads": true, + "has_wiki": true, + "has_pages": false, + "forks_count": 0, + "mirror_url": null, + "open_issues_count": 3, + "forks": 0, + "open_issues": 3, + "watchers": 0, + "default_branch": "master" + }, + "organization": { + "login": "kanboardapp", + "id": 8738076, + "url": "https://api.github.com/orgs/kanboardapp", + "repos_url": "https://api.github.com/orgs/kanboardapp/repos", + "events_url": "https://api.github.com/orgs/kanboardapp/events", + "members_url": "https://api.github.com/orgs/kanboardapp/members{/member}", + "public_members_url": "https://api.github.com/orgs/kanboardapp/public_members{/member}", + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "description": null + }, + "sender": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + } +} \ No newline at end of file diff --git a/tests/units/fixtures/github_issue_closed.json b/tests/units/fixtures/github_issue_closed.json new file mode 100644 index 00000000..5d2393eb --- /dev/null +++ b/tests/units/fixtures/github_issue_closed.json @@ -0,0 +1,159 @@ +{ + "action": "closed", + "issue": { + "url": "https://api.github.com/repos/kanboardapp/webhook/issues/3", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/labels{/name}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/comments", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/events", + "html_url": "https://github.com/kanboardapp/webhook/issues/3", + "id": 89823399, + "number": 3, + "title": "test with ngrok", + "user": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "labels": [], + "state": "closed", + "locked": false, + "assignee": null, + "milestone": null, + "comments": 0, + "created_at": "2015-06-20T21:58:20Z", + "updated_at": "2015-06-20T22:28:32Z", + "closed_at": "2015-06-20T22:28:32Z", + "body": "plop" + }, + "repository": { + "id": 25744941, + "name": "webhook", + "full_name": "kanboardapp/webhook", + "owner": { + "login": "kanboardapp", + "id": 8738076, + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/kanboardapp", + "html_url": "https://github.com/kanboardapp", + "followers_url": "https://api.github.com/users/kanboardapp/followers", + "following_url": "https://api.github.com/users/kanboardapp/following{/other_user}", + "gists_url": "https://api.github.com/users/kanboardapp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kanboardapp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kanboardapp/subscriptions", + "organizations_url": "https://api.github.com/users/kanboardapp/orgs", + "repos_url": "https://api.github.com/users/kanboardapp/repos", + "events_url": "https://api.github.com/users/kanboardapp/events{/privacy}", + "received_events_url": "https://api.github.com/users/kanboardapp/received_events", + "type": "Organization", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/kanboardapp/webhook", + "description": "", + "fork": false, + "url": "https://api.github.com/repos/kanboardapp/webhook", + "forks_url": "https://api.github.com/repos/kanboardapp/webhook/forks", + "keys_url": "https://api.github.com/repos/kanboardapp/webhook/keys{/key_id}", + "collaborators_url": "https://api.github.com/repos/kanboardapp/webhook/collaborators{/collaborator}", + "teams_url": "https://api.github.com/repos/kanboardapp/webhook/teams", + "hooks_url": "https://api.github.com/repos/kanboardapp/webhook/hooks", + "issue_events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/events{/number}", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/events", + "assignees_url": "https://api.github.com/repos/kanboardapp/webhook/assignees{/user}", + "branches_url": "https://api.github.com/repos/kanboardapp/webhook/branches{/branch}", + "tags_url": "https://api.github.com/repos/kanboardapp/webhook/tags", + "blobs_url": "https://api.github.com/repos/kanboardapp/webhook/git/blobs{/sha}", + "git_tags_url": "https://api.github.com/repos/kanboardapp/webhook/git/tags{/sha}", + "git_refs_url": "https://api.github.com/repos/kanboardapp/webhook/git/refs{/sha}", + "trees_url": "https://api.github.com/repos/kanboardapp/webhook/git/trees{/sha}", + "statuses_url": "https://api.github.com/repos/kanboardapp/webhook/statuses/{sha}", + "languages_url": "https://api.github.com/repos/kanboardapp/webhook/languages", + "stargazers_url": "https://api.github.com/repos/kanboardapp/webhook/stargazers", + "contributors_url": "https://api.github.com/repos/kanboardapp/webhook/contributors", + "subscribers_url": "https://api.github.com/repos/kanboardapp/webhook/subscribers", + "subscription_url": "https://api.github.com/repos/kanboardapp/webhook/subscription", + "commits_url": "https://api.github.com/repos/kanboardapp/webhook/commits{/sha}", + "git_commits_url": "https://api.github.com/repos/kanboardapp/webhook/git/commits{/sha}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/comments{/number}", + "issue_comment_url": "https://api.github.com/repos/kanboardapp/webhook/issues/comments{/number}", + "contents_url": "https://api.github.com/repos/kanboardapp/webhook/contents/{+path}", + "compare_url": "https://api.github.com/repos/kanboardapp/webhook/compare/{base}...{head}", + "merges_url": "https://api.github.com/repos/kanboardapp/webhook/merges", + "archive_url": "https://api.github.com/repos/kanboardapp/webhook/{archive_format}{/ref}", + "downloads_url": "https://api.github.com/repos/kanboardapp/webhook/downloads", + "issues_url": "https://api.github.com/repos/kanboardapp/webhook/issues{/number}", + "pulls_url": "https://api.github.com/repos/kanboardapp/webhook/pulls{/number}", + "milestones_url": "https://api.github.com/repos/kanboardapp/webhook/milestones{/number}", + "notifications_url": "https://api.github.com/repos/kanboardapp/webhook/notifications{?since,all,participating}", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/labels{/name}", + "releases_url": "https://api.github.com/repos/kanboardapp/webhook/releases{/id}", + "created_at": "2014-10-25T20:10:38Z", + "updated_at": "2014-10-25T20:10:38Z", + "pushed_at": "2014-10-25T22:02:01Z", + "git_url": "git://github.com/kanboardapp/webhook.git", + "ssh_url": "git@github.com:kanboardapp/webhook.git", + "clone_url": "https://github.com/kanboardapp/webhook.git", + "svn_url": "https://github.com/kanboardapp/webhook", + "homepage": null, + "size": 124, + "stargazers_count": 0, + "watchers_count": 0, + "language": null, + "has_issues": true, + "has_downloads": true, + "has_wiki": true, + "has_pages": false, + "forks_count": 0, + "mirror_url": null, + "open_issues_count": 2, + "forks": 0, + "open_issues": 2, + "watchers": 0, + "default_branch": "master" + }, + "organization": { + "login": "kanboardapp", + "id": 8738076, + "url": "https://api.github.com/orgs/kanboardapp", + "repos_url": "https://api.github.com/orgs/kanboardapp/repos", + "events_url": "https://api.github.com/orgs/kanboardapp/events", + "members_url": "https://api.github.com/orgs/kanboardapp/members{/member}", + "public_members_url": "https://api.github.com/orgs/kanboardapp/public_members{/member}", + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "description": null + }, + "sender": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + } +} \ No newline at end of file diff --git a/tests/units/fixtures/github_issue_labeled.json b/tests/units/fixtures/github_issue_labeled.json new file mode 100644 index 00000000..4576b04f --- /dev/null +++ b/tests/units/fixtures/github_issue_labeled.json @@ -0,0 +1,170 @@ +{ + "action": "labeled", + "issue": { + "url": "https://api.github.com/repos/kanboardapp/webhook/issues/3", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/labels{/name}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/comments", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/events", + "html_url": "https://github.com/kanboardapp/webhook/issues/3", + "id": 89823399, + "number": 3, + "title": "test with ngrok", + "user": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "labels": [ + { + "url": "https://api.github.com/repos/kanboardapp/webhook/labels/bug", + "name": "bug", + "color": "fc2929" + } + ], + "state": "open", + "locked": false, + "assignee": null, + "milestone": null, + "comments": 0, + "created_at": "2015-06-20T21:58:20Z", + "updated_at": "2015-06-20T22:37:49Z", + "closed_at": null, + "body": "plop" + }, + "label": { + "url": "https://api.github.com/repos/kanboardapp/webhook/labels/bug", + "name": "bug", + "color": "fc2929" + }, + "repository": { + "id": 25744941, + "name": "webhook", + "full_name": "kanboardapp/webhook", + "owner": { + "login": "kanboardapp", + "id": 8738076, + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/kanboardapp", + "html_url": "https://github.com/kanboardapp", + "followers_url": "https://api.github.com/users/kanboardapp/followers", + "following_url": "https://api.github.com/users/kanboardapp/following{/other_user}", + "gists_url": "https://api.github.com/users/kanboardapp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kanboardapp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kanboardapp/subscriptions", + "organizations_url": "https://api.github.com/users/kanboardapp/orgs", + "repos_url": "https://api.github.com/users/kanboardapp/repos", + "events_url": "https://api.github.com/users/kanboardapp/events{/privacy}", + "received_events_url": "https://api.github.com/users/kanboardapp/received_events", + "type": "Organization", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/kanboardapp/webhook", + "description": "", + "fork": false, + "url": "https://api.github.com/repos/kanboardapp/webhook", + "forks_url": "https://api.github.com/repos/kanboardapp/webhook/forks", + "keys_url": "https://api.github.com/repos/kanboardapp/webhook/keys{/key_id}", + "collaborators_url": "https://api.github.com/repos/kanboardapp/webhook/collaborators{/collaborator}", + "teams_url": "https://api.github.com/repos/kanboardapp/webhook/teams", + "hooks_url": "https://api.github.com/repos/kanboardapp/webhook/hooks", + "issue_events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/events{/number}", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/events", + "assignees_url": "https://api.github.com/repos/kanboardapp/webhook/assignees{/user}", + "branches_url": "https://api.github.com/repos/kanboardapp/webhook/branches{/branch}", + "tags_url": "https://api.github.com/repos/kanboardapp/webhook/tags", + "blobs_url": "https://api.github.com/repos/kanboardapp/webhook/git/blobs{/sha}", + "git_tags_url": "https://api.github.com/repos/kanboardapp/webhook/git/tags{/sha}", + "git_refs_url": "https://api.github.com/repos/kanboardapp/webhook/git/refs{/sha}", + "trees_url": "https://api.github.com/repos/kanboardapp/webhook/git/trees{/sha}", + "statuses_url": "https://api.github.com/repos/kanboardapp/webhook/statuses/{sha}", + "languages_url": "https://api.github.com/repos/kanboardapp/webhook/languages", + "stargazers_url": "https://api.github.com/repos/kanboardapp/webhook/stargazers", + "contributors_url": "https://api.github.com/repos/kanboardapp/webhook/contributors", + "subscribers_url": "https://api.github.com/repos/kanboardapp/webhook/subscribers", + "subscription_url": "https://api.github.com/repos/kanboardapp/webhook/subscription", + "commits_url": "https://api.github.com/repos/kanboardapp/webhook/commits{/sha}", + "git_commits_url": "https://api.github.com/repos/kanboardapp/webhook/git/commits{/sha}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/comments{/number}", + "issue_comment_url": "https://api.github.com/repos/kanboardapp/webhook/issues/comments{/number}", + "contents_url": "https://api.github.com/repos/kanboardapp/webhook/contents/{+path}", + "compare_url": "https://api.github.com/repos/kanboardapp/webhook/compare/{base}...{head}", + "merges_url": "https://api.github.com/repos/kanboardapp/webhook/merges", + "archive_url": "https://api.github.com/repos/kanboardapp/webhook/{archive_format}{/ref}", + "downloads_url": "https://api.github.com/repos/kanboardapp/webhook/downloads", + "issues_url": "https://api.github.com/repos/kanboardapp/webhook/issues{/number}", + "pulls_url": "https://api.github.com/repos/kanboardapp/webhook/pulls{/number}", + "milestones_url": "https://api.github.com/repos/kanboardapp/webhook/milestones{/number}", + "notifications_url": "https://api.github.com/repos/kanboardapp/webhook/notifications{?since,all,participating}", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/labels{/name}", + "releases_url": "https://api.github.com/repos/kanboardapp/webhook/releases{/id}", + "created_at": "2014-10-25T20:10:38Z", + "updated_at": "2014-10-25T20:10:38Z", + "pushed_at": "2014-10-25T22:02:01Z", + "git_url": "git://github.com/kanboardapp/webhook.git", + "ssh_url": "git@github.com:kanboardapp/webhook.git", + "clone_url": "https://github.com/kanboardapp/webhook.git", + "svn_url": "https://github.com/kanboardapp/webhook", + "homepage": null, + "size": 124, + "stargazers_count": 0, + "watchers_count": 0, + "language": null, + "has_issues": true, + "has_downloads": true, + "has_wiki": true, + "has_pages": false, + "forks_count": 0, + "mirror_url": null, + "open_issues_count": 3, + "forks": 0, + "open_issues": 3, + "watchers": 0, + "default_branch": "master" + }, + "organization": { + "login": "kanboardapp", + "id": 8738076, + "url": "https://api.github.com/orgs/kanboardapp", + "repos_url": "https://api.github.com/orgs/kanboardapp/repos", + "events_url": "https://api.github.com/orgs/kanboardapp/events", + "members_url": "https://api.github.com/orgs/kanboardapp/members{/member}", + "public_members_url": "https://api.github.com/orgs/kanboardapp/public_members{/member}", + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "description": null + }, + "sender": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + } +} \ No newline at end of file diff --git a/tests/units/fixtures/github_issue_opened.json b/tests/units/fixtures/github_issue_opened.json new file mode 100644 index 00000000..13f8d930 --- /dev/null +++ b/tests/units/fixtures/github_issue_opened.json @@ -0,0 +1,159 @@ +{ + "action": "opened", + "issue": { + "url": "https://api.github.com/repos/kanboardapp/webhook/issues/3", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/labels{/name}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/comments", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/events", + "html_url": "https://github.com/kanboardapp/webhook/issues/3", + "id": 89823399, + "number": 3, + "title": "Test Webhook", + "user": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "labels": [], + "state": "open", + "locked": false, + "assignee": null, + "milestone": null, + "comments": 0, + "created_at": "2015-06-20T21:58:20Z", + "updated_at": "2015-06-20T21:58:20Z", + "closed_at": null, + "body": "plop" + }, + "repository": { + "id": 25744941, + "name": "webhook", + "full_name": "kanboardapp/webhook", + "owner": { + "login": "kanboardapp", + "id": 8738076, + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/kanboardapp", + "html_url": "https://github.com/kanboardapp", + "followers_url": "https://api.github.com/users/kanboardapp/followers", + "following_url": "https://api.github.com/users/kanboardapp/following{/other_user}", + "gists_url": "https://api.github.com/users/kanboardapp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kanboardapp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kanboardapp/subscriptions", + "organizations_url": "https://api.github.com/users/kanboardapp/orgs", + "repos_url": "https://api.github.com/users/kanboardapp/repos", + "events_url": "https://api.github.com/users/kanboardapp/events{/privacy}", + "received_events_url": "https://api.github.com/users/kanboardapp/received_events", + "type": "Organization", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/kanboardapp/webhook", + "description": "", + "fork": false, + "url": "https://api.github.com/repos/kanboardapp/webhook", + "forks_url": "https://api.github.com/repos/kanboardapp/webhook/forks", + "keys_url": "https://api.github.com/repos/kanboardapp/webhook/keys{/key_id}", + "collaborators_url": "https://api.github.com/repos/kanboardapp/webhook/collaborators{/collaborator}", + "teams_url": "https://api.github.com/repos/kanboardapp/webhook/teams", + "hooks_url": "https://api.github.com/repos/kanboardapp/webhook/hooks", + "issue_events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/events{/number}", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/events", + "assignees_url": "https://api.github.com/repos/kanboardapp/webhook/assignees{/user}", + "branches_url": "https://api.github.com/repos/kanboardapp/webhook/branches{/branch}", + "tags_url": "https://api.github.com/repos/kanboardapp/webhook/tags", + "blobs_url": "https://api.github.com/repos/kanboardapp/webhook/git/blobs{/sha}", + "git_tags_url": "https://api.github.com/repos/kanboardapp/webhook/git/tags{/sha}", + "git_refs_url": "https://api.github.com/repos/kanboardapp/webhook/git/refs{/sha}", + "trees_url": "https://api.github.com/repos/kanboardapp/webhook/git/trees{/sha}", + "statuses_url": "https://api.github.com/repos/kanboardapp/webhook/statuses/{sha}", + "languages_url": "https://api.github.com/repos/kanboardapp/webhook/languages", + "stargazers_url": "https://api.github.com/repos/kanboardapp/webhook/stargazers", + "contributors_url": "https://api.github.com/repos/kanboardapp/webhook/contributors", + "subscribers_url": "https://api.github.com/repos/kanboardapp/webhook/subscribers", + "subscription_url": "https://api.github.com/repos/kanboardapp/webhook/subscription", + "commits_url": "https://api.github.com/repos/kanboardapp/webhook/commits{/sha}", + "git_commits_url": "https://api.github.com/repos/kanboardapp/webhook/git/commits{/sha}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/comments{/number}", + "issue_comment_url": "https://api.github.com/repos/kanboardapp/webhook/issues/comments{/number}", + "contents_url": "https://api.github.com/repos/kanboardapp/webhook/contents/{+path}", + "compare_url": "https://api.github.com/repos/kanboardapp/webhook/compare/{base}...{head}", + "merges_url": "https://api.github.com/repos/kanboardapp/webhook/merges", + "archive_url": "https://api.github.com/repos/kanboardapp/webhook/{archive_format}{/ref}", + "downloads_url": "https://api.github.com/repos/kanboardapp/webhook/downloads", + "issues_url": "https://api.github.com/repos/kanboardapp/webhook/issues{/number}", + "pulls_url": "https://api.github.com/repos/kanboardapp/webhook/pulls{/number}", + "milestones_url": "https://api.github.com/repos/kanboardapp/webhook/milestones{/number}", + "notifications_url": "https://api.github.com/repos/kanboardapp/webhook/notifications{?since,all,participating}", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/labels{/name}", + "releases_url": "https://api.github.com/repos/kanboardapp/webhook/releases{/id}", + "created_at": "2014-10-25T20:10:38Z", + "updated_at": "2014-10-25T20:10:38Z", + "pushed_at": "2014-10-25T22:02:01Z", + "git_url": "git://github.com/kanboardapp/webhook.git", + "ssh_url": "git@github.com:kanboardapp/webhook.git", + "clone_url": "https://github.com/kanboardapp/webhook.git", + "svn_url": "https://github.com/kanboardapp/webhook", + "homepage": null, + "size": 124, + "stargazers_count": 0, + "watchers_count": 0, + "language": null, + "has_issues": true, + "has_downloads": true, + "has_wiki": true, + "has_pages": false, + "forks_count": 0, + "mirror_url": null, + "open_issues_count": 3, + "forks": 0, + "open_issues": 3, + "watchers": 0, + "default_branch": "master" + }, + "organization": { + "login": "kanboardapp", + "id": 8738076, + "url": "https://api.github.com/orgs/kanboardapp", + "repos_url": "https://api.github.com/orgs/kanboardapp/repos", + "events_url": "https://api.github.com/orgs/kanboardapp/events", + "members_url": "https://api.github.com/orgs/kanboardapp/members{/member}", + "public_members_url": "https://api.github.com/orgs/kanboardapp/public_members{/member}", + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "description": null + }, + "sender": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + } +} \ No newline at end of file diff --git a/tests/units/fixtures/github_issue_reopened.json b/tests/units/fixtures/github_issue_reopened.json new file mode 100644 index 00000000..70f9e884 --- /dev/null +++ b/tests/units/fixtures/github_issue_reopened.json @@ -0,0 +1,159 @@ +{ + "action": "reopened", + "issue": { + "url": "https://api.github.com/repos/kanboardapp/webhook/issues/3", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/labels{/name}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/comments", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/events", + "html_url": "https://github.com/kanboardapp/webhook/issues/3", + "id": 89823399, + "number": 3, + "title": "test with ngrok", + "user": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "labels": [], + "state": "open", + "locked": false, + "assignee": null, + "milestone": null, + "comments": 0, + "created_at": "2015-06-20T21:58:20Z", + "updated_at": "2015-06-20T22:33:35Z", + "closed_at": null, + "body": "plop" + }, + "repository": { + "id": 25744941, + "name": "webhook", + "full_name": "kanboardapp/webhook", + "owner": { + "login": "kanboardapp", + "id": 8738076, + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/kanboardapp", + "html_url": "https://github.com/kanboardapp", + "followers_url": "https://api.github.com/users/kanboardapp/followers", + "following_url": "https://api.github.com/users/kanboardapp/following{/other_user}", + "gists_url": "https://api.github.com/users/kanboardapp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kanboardapp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kanboardapp/subscriptions", + "organizations_url": "https://api.github.com/users/kanboardapp/orgs", + "repos_url": "https://api.github.com/users/kanboardapp/repos", + "events_url": "https://api.github.com/users/kanboardapp/events{/privacy}", + "received_events_url": "https://api.github.com/users/kanboardapp/received_events", + "type": "Organization", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/kanboardapp/webhook", + "description": "", + "fork": false, + "url": "https://api.github.com/repos/kanboardapp/webhook", + "forks_url": "https://api.github.com/repos/kanboardapp/webhook/forks", + "keys_url": "https://api.github.com/repos/kanboardapp/webhook/keys{/key_id}", + "collaborators_url": "https://api.github.com/repos/kanboardapp/webhook/collaborators{/collaborator}", + "teams_url": "https://api.github.com/repos/kanboardapp/webhook/teams", + "hooks_url": "https://api.github.com/repos/kanboardapp/webhook/hooks", + "issue_events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/events{/number}", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/events", + "assignees_url": "https://api.github.com/repos/kanboardapp/webhook/assignees{/user}", + "branches_url": "https://api.github.com/repos/kanboardapp/webhook/branches{/branch}", + "tags_url": "https://api.github.com/repos/kanboardapp/webhook/tags", + "blobs_url": "https://api.github.com/repos/kanboardapp/webhook/git/blobs{/sha}", + "git_tags_url": "https://api.github.com/repos/kanboardapp/webhook/git/tags{/sha}", + "git_refs_url": "https://api.github.com/repos/kanboardapp/webhook/git/refs{/sha}", + "trees_url": "https://api.github.com/repos/kanboardapp/webhook/git/trees{/sha}", + "statuses_url": "https://api.github.com/repos/kanboardapp/webhook/statuses/{sha}", + "languages_url": "https://api.github.com/repos/kanboardapp/webhook/languages", + "stargazers_url": "https://api.github.com/repos/kanboardapp/webhook/stargazers", + "contributors_url": "https://api.github.com/repos/kanboardapp/webhook/contributors", + "subscribers_url": "https://api.github.com/repos/kanboardapp/webhook/subscribers", + "subscription_url": "https://api.github.com/repos/kanboardapp/webhook/subscription", + "commits_url": "https://api.github.com/repos/kanboardapp/webhook/commits{/sha}", + "git_commits_url": "https://api.github.com/repos/kanboardapp/webhook/git/commits{/sha}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/comments{/number}", + "issue_comment_url": "https://api.github.com/repos/kanboardapp/webhook/issues/comments{/number}", + "contents_url": "https://api.github.com/repos/kanboardapp/webhook/contents/{+path}", + "compare_url": "https://api.github.com/repos/kanboardapp/webhook/compare/{base}...{head}", + "merges_url": "https://api.github.com/repos/kanboardapp/webhook/merges", + "archive_url": "https://api.github.com/repos/kanboardapp/webhook/{archive_format}{/ref}", + "downloads_url": "https://api.github.com/repos/kanboardapp/webhook/downloads", + "issues_url": "https://api.github.com/repos/kanboardapp/webhook/issues{/number}", + "pulls_url": "https://api.github.com/repos/kanboardapp/webhook/pulls{/number}", + "milestones_url": "https://api.github.com/repos/kanboardapp/webhook/milestones{/number}", + "notifications_url": "https://api.github.com/repos/kanboardapp/webhook/notifications{?since,all,participating}", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/labels{/name}", + "releases_url": "https://api.github.com/repos/kanboardapp/webhook/releases{/id}", + "created_at": "2014-10-25T20:10:38Z", + "updated_at": "2014-10-25T20:10:38Z", + "pushed_at": "2014-10-25T22:02:01Z", + "git_url": "git://github.com/kanboardapp/webhook.git", + "ssh_url": "git@github.com:kanboardapp/webhook.git", + "clone_url": "https://github.com/kanboardapp/webhook.git", + "svn_url": "https://github.com/kanboardapp/webhook", + "homepage": null, + "size": 124, + "stargazers_count": 0, + "watchers_count": 0, + "language": null, + "has_issues": true, + "has_downloads": true, + "has_wiki": true, + "has_pages": false, + "forks_count": 0, + "mirror_url": null, + "open_issues_count": 3, + "forks": 0, + "open_issues": 3, + "watchers": 0, + "default_branch": "master" + }, + "organization": { + "login": "kanboardapp", + "id": 8738076, + "url": "https://api.github.com/orgs/kanboardapp", + "repos_url": "https://api.github.com/orgs/kanboardapp/repos", + "events_url": "https://api.github.com/orgs/kanboardapp/events", + "members_url": "https://api.github.com/orgs/kanboardapp/members{/member}", + "public_members_url": "https://api.github.com/orgs/kanboardapp/public_members{/member}", + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "description": null + }, + "sender": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + } +} \ No newline at end of file diff --git a/tests/units/fixtures/github_issue_unassigned.json b/tests/units/fixtures/github_issue_unassigned.json new file mode 100644 index 00000000..0a578bab --- /dev/null +++ b/tests/units/fixtures/github_issue_unassigned.json @@ -0,0 +1,178 @@ +{ + "action": "unassigned", + "issue": { + "url": "https://api.github.com/repos/kanboardapp/webhook/issues/3", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/labels{/name}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/comments", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/events", + "html_url": "https://github.com/kanboardapp/webhook/issues/3", + "id": 89823399, + "number": 3, + "title": "test with ngrok", + "user": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "labels": [], + "state": "open", + "locked": false, + "assignee": null, + "milestone": null, + "comments": 0, + "created_at": "2015-06-20T21:58:20Z", + "updated_at": "2015-06-20T22:26:05Z", + "closed_at": null, + "body": "plop" + }, + "assignee": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "repository": { + "id": 25744941, + "name": "webhook", + "full_name": "kanboardapp/webhook", + "owner": { + "login": "kanboardapp", + "id": 8738076, + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/kanboardapp", + "html_url": "https://github.com/kanboardapp", + "followers_url": "https://api.github.com/users/kanboardapp/followers", + "following_url": "https://api.github.com/users/kanboardapp/following{/other_user}", + "gists_url": "https://api.github.com/users/kanboardapp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kanboardapp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kanboardapp/subscriptions", + "organizations_url": "https://api.github.com/users/kanboardapp/orgs", + "repos_url": "https://api.github.com/users/kanboardapp/repos", + "events_url": "https://api.github.com/users/kanboardapp/events{/privacy}", + "received_events_url": "https://api.github.com/users/kanboardapp/received_events", + "type": "Organization", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/kanboardapp/webhook", + "description": "", + "fork": false, + "url": "https://api.github.com/repos/kanboardapp/webhook", + "forks_url": "https://api.github.com/repos/kanboardapp/webhook/forks", + "keys_url": "https://api.github.com/repos/kanboardapp/webhook/keys{/key_id}", + "collaborators_url": "https://api.github.com/repos/kanboardapp/webhook/collaborators{/collaborator}", + "teams_url": "https://api.github.com/repos/kanboardapp/webhook/teams", + "hooks_url": "https://api.github.com/repos/kanboardapp/webhook/hooks", + "issue_events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/events{/number}", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/events", + "assignees_url": "https://api.github.com/repos/kanboardapp/webhook/assignees{/user}", + "branches_url": "https://api.github.com/repos/kanboardapp/webhook/branches{/branch}", + "tags_url": "https://api.github.com/repos/kanboardapp/webhook/tags", + "blobs_url": "https://api.github.com/repos/kanboardapp/webhook/git/blobs{/sha}", + "git_tags_url": "https://api.github.com/repos/kanboardapp/webhook/git/tags{/sha}", + "git_refs_url": "https://api.github.com/repos/kanboardapp/webhook/git/refs{/sha}", + "trees_url": "https://api.github.com/repos/kanboardapp/webhook/git/trees{/sha}", + "statuses_url": "https://api.github.com/repos/kanboardapp/webhook/statuses/{sha}", + "languages_url": "https://api.github.com/repos/kanboardapp/webhook/languages", + "stargazers_url": "https://api.github.com/repos/kanboardapp/webhook/stargazers", + "contributors_url": "https://api.github.com/repos/kanboardapp/webhook/contributors", + "subscribers_url": "https://api.github.com/repos/kanboardapp/webhook/subscribers", + "subscription_url": "https://api.github.com/repos/kanboardapp/webhook/subscription", + "commits_url": "https://api.github.com/repos/kanboardapp/webhook/commits{/sha}", + "git_commits_url": "https://api.github.com/repos/kanboardapp/webhook/git/commits{/sha}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/comments{/number}", + "issue_comment_url": "https://api.github.com/repos/kanboardapp/webhook/issues/comments{/number}", + "contents_url": "https://api.github.com/repos/kanboardapp/webhook/contents/{+path}", + "compare_url": "https://api.github.com/repos/kanboardapp/webhook/compare/{base}...{head}", + "merges_url": "https://api.github.com/repos/kanboardapp/webhook/merges", + "archive_url": "https://api.github.com/repos/kanboardapp/webhook/{archive_format}{/ref}", + "downloads_url": "https://api.github.com/repos/kanboardapp/webhook/downloads", + "issues_url": "https://api.github.com/repos/kanboardapp/webhook/issues{/number}", + "pulls_url": "https://api.github.com/repos/kanboardapp/webhook/pulls{/number}", + "milestones_url": "https://api.github.com/repos/kanboardapp/webhook/milestones{/number}", + "notifications_url": "https://api.github.com/repos/kanboardapp/webhook/notifications{?since,all,participating}", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/labels{/name}", + "releases_url": "https://api.github.com/repos/kanboardapp/webhook/releases{/id}", + "created_at": "2014-10-25T20:10:38Z", + "updated_at": "2014-10-25T20:10:38Z", + "pushed_at": "2014-10-25T22:02:01Z", + "git_url": "git://github.com/kanboardapp/webhook.git", + "ssh_url": "git@github.com:kanboardapp/webhook.git", + "clone_url": "https://github.com/kanboardapp/webhook.git", + "svn_url": "https://github.com/kanboardapp/webhook", + "homepage": null, + "size": 124, + "stargazers_count": 0, + "watchers_count": 0, + "language": null, + "has_issues": true, + "has_downloads": true, + "has_wiki": true, + "has_pages": false, + "forks_count": 0, + "mirror_url": null, + "open_issues_count": 3, + "forks": 0, + "open_issues": 3, + "watchers": 0, + "default_branch": "master" + }, + "organization": { + "login": "kanboardapp", + "id": 8738076, + "url": "https://api.github.com/orgs/kanboardapp", + "repos_url": "https://api.github.com/orgs/kanboardapp/repos", + "events_url": "https://api.github.com/orgs/kanboardapp/events", + "members_url": "https://api.github.com/orgs/kanboardapp/members{/member}", + "public_members_url": "https://api.github.com/orgs/kanboardapp/public_members{/member}", + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "description": null + }, + "sender": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + } +} \ No newline at end of file diff --git a/tests/units/fixtures/github_issue_unlabeled.json b/tests/units/fixtures/github_issue_unlabeled.json new file mode 100644 index 00000000..47070a91 --- /dev/null +++ b/tests/units/fixtures/github_issue_unlabeled.json @@ -0,0 +1,164 @@ +{ + "action": "unlabeled", + "issue": { + "url": "https://api.github.com/repos/kanboardapp/webhook/issues/3", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/labels{/name}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/comments", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/3/events", + "html_url": "https://github.com/kanboardapp/webhook/issues/3", + "id": 89823399, + "number": 3, + "title": "test with ngrok", + "user": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + }, + "labels": [], + "state": "open", + "locked": false, + "assignee": null, + "milestone": null, + "comments": 0, + "created_at": "2015-06-20T21:58:20Z", + "updated_at": "2015-06-20T22:43:48Z", + "closed_at": null, + "body": "plop" + }, + "label": { + "url": "https://api.github.com/repos/kanboardapp/webhook/labels/bug", + "name": "bug", + "color": "fc2929" + }, + "repository": { + "id": 25744941, + "name": "webhook", + "full_name": "kanboardapp/webhook", + "owner": { + "login": "kanboardapp", + "id": 8738076, + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/kanboardapp", + "html_url": "https://github.com/kanboardapp", + "followers_url": "https://api.github.com/users/kanboardapp/followers", + "following_url": "https://api.github.com/users/kanboardapp/following{/other_user}", + "gists_url": "https://api.github.com/users/kanboardapp/gists{/gist_id}", + "starred_url": "https://api.github.com/users/kanboardapp/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/kanboardapp/subscriptions", + "organizations_url": "https://api.github.com/users/kanboardapp/orgs", + "repos_url": "https://api.github.com/users/kanboardapp/repos", + "events_url": "https://api.github.com/users/kanboardapp/events{/privacy}", + "received_events_url": "https://api.github.com/users/kanboardapp/received_events", + "type": "Organization", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/kanboardapp/webhook", + "description": "", + "fork": false, + "url": "https://api.github.com/repos/kanboardapp/webhook", + "forks_url": "https://api.github.com/repos/kanboardapp/webhook/forks", + "keys_url": "https://api.github.com/repos/kanboardapp/webhook/keys{/key_id}", + "collaborators_url": "https://api.github.com/repos/kanboardapp/webhook/collaborators{/collaborator}", + "teams_url": "https://api.github.com/repos/kanboardapp/webhook/teams", + "hooks_url": "https://api.github.com/repos/kanboardapp/webhook/hooks", + "issue_events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/events{/number}", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/events", + "assignees_url": "https://api.github.com/repos/kanboardapp/webhook/assignees{/user}", + "branches_url": "https://api.github.com/repos/kanboardapp/webhook/branches{/branch}", + "tags_url": "https://api.github.com/repos/kanboardapp/webhook/tags", + "blobs_url": "https://api.github.com/repos/kanboardapp/webhook/git/blobs{/sha}", + "git_tags_url": "https://api.github.com/repos/kanboardapp/webhook/git/tags{/sha}", + "git_refs_url": "https://api.github.com/repos/kanboardapp/webhook/git/refs{/sha}", + "trees_url": "https://api.github.com/repos/kanboardapp/webhook/git/trees{/sha}", + "statuses_url": "https://api.github.com/repos/kanboardapp/webhook/statuses/{sha}", + "languages_url": "https://api.github.com/repos/kanboardapp/webhook/languages", + "stargazers_url": "https://api.github.com/repos/kanboardapp/webhook/stargazers", + "contributors_url": "https://api.github.com/repos/kanboardapp/webhook/contributors", + "subscribers_url": "https://api.github.com/repos/kanboardapp/webhook/subscribers", + "subscription_url": "https://api.github.com/repos/kanboardapp/webhook/subscription", + "commits_url": "https://api.github.com/repos/kanboardapp/webhook/commits{/sha}", + "git_commits_url": "https://api.github.com/repos/kanboardapp/webhook/git/commits{/sha}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/comments{/number}", + "issue_comment_url": "https://api.github.com/repos/kanboardapp/webhook/issues/comments{/number}", + "contents_url": "https://api.github.com/repos/kanboardapp/webhook/contents/{+path}", + "compare_url": "https://api.github.com/repos/kanboardapp/webhook/compare/{base}...{head}", + "merges_url": "https://api.github.com/repos/kanboardapp/webhook/merges", + "archive_url": "https://api.github.com/repos/kanboardapp/webhook/{archive_format}{/ref}", + "downloads_url": "https://api.github.com/repos/kanboardapp/webhook/downloads", + "issues_url": "https://api.github.com/repos/kanboardapp/webhook/issues{/number}", + "pulls_url": "https://api.github.com/repos/kanboardapp/webhook/pulls{/number}", + "milestones_url": "https://api.github.com/repos/kanboardapp/webhook/milestones{/number}", + "notifications_url": "https://api.github.com/repos/kanboardapp/webhook/notifications{?since,all,participating}", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/labels{/name}", + "releases_url": "https://api.github.com/repos/kanboardapp/webhook/releases{/id}", + "created_at": "2014-10-25T20:10:38Z", + "updated_at": "2014-10-25T20:10:38Z", + "pushed_at": "2014-10-25T22:02:01Z", + "git_url": "git://github.com/kanboardapp/webhook.git", + "ssh_url": "git@github.com:kanboardapp/webhook.git", + "clone_url": "https://github.com/kanboardapp/webhook.git", + "svn_url": "https://github.com/kanboardapp/webhook", + "homepage": null, + "size": 124, + "stargazers_count": 0, + "watchers_count": 0, + "language": null, + "has_issues": true, + "has_downloads": true, + "has_wiki": true, + "has_pages": false, + "forks_count": 0, + "mirror_url": null, + "open_issues_count": 3, + "forks": 0, + "open_issues": 3, + "watchers": 0, + "default_branch": "master" + }, + "organization": { + "login": "kanboardapp", + "id": 8738076, + "url": "https://api.github.com/orgs/kanboardapp", + "repos_url": "https://api.github.com/orgs/kanboardapp/repos", + "events_url": "https://api.github.com/orgs/kanboardapp/events", + "members_url": "https://api.github.com/orgs/kanboardapp/members{/member}", + "public_members_url": "https://api.github.com/orgs/kanboardapp/public_members{/member}", + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "description": null + }, + "sender": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + } +} \ No newline at end of file diff --git a/tests/units/fixtures/github_push.json b/tests/units/fixtures/github_push.json new file mode 100644 index 00000000..5ae9b766 --- /dev/null +++ b/tests/units/fixtures/github_push.json @@ -0,0 +1,165 @@ +{ + "ref": "refs/heads/master", + "before": "895598f1baf1ee5fb3f43ebc509aa86e263bde4b", + "after": "98dee3e49ee7aa66ffec1f761af93da5ffd711f6", + "created": false, + "deleted": false, + "forced": false, + "base_ref": null, + "compare": "https://github.com/kanboardapp/webhook/compare/895598f1baf1...98dee3e49ee7", + "commits": [ + { + "id": "98dee3e49ee7aa66ffec1f761af93da5ffd711f6", + "distinct": true, + "message": "Update README to fix #1", + "timestamp": "2015-06-20T18:54:52-04:00", + "url": "https://github.com/kanboardapp/webhook/commit/98dee3e49ee7aa66ffec1f761af93da5ffd711f6", + "author": { + "name": "Frédéric Guillot", + "email": "fred@kanboard.net", + "username": "fguillot" + }, + "committer": { + "name": "Frédéric Guillot", + "email": "fred@kanboard.net", + "username": "fguillot" + }, + "added": [], + "removed": [], + "modified": [ + "README.md" + ] + } + ], + "head_commit": { + "id": "98dee3e49ee7aa66ffec1f761af93da5ffd711f6", + "distinct": true, + "message": "Update README", + "timestamp": "2015-06-20T18:54:52-04:00", + "url": "https://github.com/kanboardapp/webhook/commit/98dee3e49ee7aa66ffec1f761af93da5ffd711f6", + "author": { + "name": "Frédéric Guillot", + "email": "fred@kanboard.net", + "username": "fguillot" + }, + "committer": { + "name": "Frédéric Guillot", + "email": "fred@kanboard.net", + "username": "fguillot" + }, + "added": [], + "removed": [], + "modified": [ + "README.md" + ] + }, + "repository": { + "id": 25744941, + "name": "webhook", + "full_name": "kanboardapp/webhook", + "owner": { + "name": "kanboardapp", + "email": null + }, + "private": false, + "html_url": "https://github.com/kanboardapp/webhook", + "description": "", + "fork": false, + "url": "https://github.com/kanboardapp/webhook", + "forks_url": "https://api.github.com/repos/kanboardapp/webhook/forks", + "keys_url": "https://api.github.com/repos/kanboardapp/webhook/keys{/key_id}", + "collaborators_url": "https://api.github.com/repos/kanboardapp/webhook/collaborators{/collaborator}", + "teams_url": "https://api.github.com/repos/kanboardapp/webhook/teams", + "hooks_url": "https://api.github.com/repos/kanboardapp/webhook/hooks", + "issue_events_url": "https://api.github.com/repos/kanboardapp/webhook/issues/events{/number}", + "events_url": "https://api.github.com/repos/kanboardapp/webhook/events", + "assignees_url": "https://api.github.com/repos/kanboardapp/webhook/assignees{/user}", + "branches_url": "https://api.github.com/repos/kanboardapp/webhook/branches{/branch}", + "tags_url": "https://api.github.com/repos/kanboardapp/webhook/tags", + "blobs_url": "https://api.github.com/repos/kanboardapp/webhook/git/blobs{/sha}", + "git_tags_url": "https://api.github.com/repos/kanboardapp/webhook/git/tags{/sha}", + "git_refs_url": "https://api.github.com/repos/kanboardapp/webhook/git/refs{/sha}", + "trees_url": "https://api.github.com/repos/kanboardapp/webhook/git/trees{/sha}", + "statuses_url": "https://api.github.com/repos/kanboardapp/webhook/statuses/{sha}", + "languages_url": "https://api.github.com/repos/kanboardapp/webhook/languages", + "stargazers_url": "https://api.github.com/repos/kanboardapp/webhook/stargazers", + "contributors_url": "https://api.github.com/repos/kanboardapp/webhook/contributors", + "subscribers_url": "https://api.github.com/repos/kanboardapp/webhook/subscribers", + "subscription_url": "https://api.github.com/repos/kanboardapp/webhook/subscription", + "commits_url": "https://api.github.com/repos/kanboardapp/webhook/commits{/sha}", + "git_commits_url": "https://api.github.com/repos/kanboardapp/webhook/git/commits{/sha}", + "comments_url": "https://api.github.com/repos/kanboardapp/webhook/comments{/number}", + "issue_comment_url": "https://api.github.com/repos/kanboardapp/webhook/issues/comments{/number}", + "contents_url": "https://api.github.com/repos/kanboardapp/webhook/contents/{+path}", + "compare_url": "https://api.github.com/repos/kanboardapp/webhook/compare/{base}...{head}", + "merges_url": "https://api.github.com/repos/kanboardapp/webhook/merges", + "archive_url": "https://api.github.com/repos/kanboardapp/webhook/{archive_format}{/ref}", + "downloads_url": "https://api.github.com/repos/kanboardapp/webhook/downloads", + "issues_url": "https://api.github.com/repos/kanboardapp/webhook/issues{/number}", + "pulls_url": "https://api.github.com/repos/kanboardapp/webhook/pulls{/number}", + "milestones_url": "https://api.github.com/repos/kanboardapp/webhook/milestones{/number}", + "notifications_url": "https://api.github.com/repos/kanboardapp/webhook/notifications{?since,all,participating}", + "labels_url": "https://api.github.com/repos/kanboardapp/webhook/labels{/name}", + "releases_url": "https://api.github.com/repos/kanboardapp/webhook/releases{/id}", + "created_at": 1414267838, + "updated_at": "2014-10-25T20:10:38Z", + "pushed_at": 1434840893, + "git_url": "git://github.com/kanboardapp/webhook.git", + "ssh_url": "git@github.com:kanboardapp/webhook.git", + "clone_url": "https://github.com/kanboardapp/webhook.git", + "svn_url": "https://github.com/kanboardapp/webhook", + "homepage": null, + "size": 124, + "stargazers_count": 0, + "watchers_count": 0, + "language": null, + "has_issues": true, + "has_downloads": true, + "has_wiki": true, + "has_pages": false, + "forks_count": 0, + "mirror_url": null, + "open_issues_count": 3, + "forks": 0, + "open_issues": 3, + "watchers": 0, + "default_branch": "master", + "stargazers": 0, + "master_branch": "master", + "organization": "kanboardapp" + }, + "pusher": { + "name": "fguillot", + "email": "fred@kanboard.net" + }, + "organization": { + "login": "kanboardapp", + "id": 8738076, + "url": "https://api.github.com/orgs/kanboardapp", + "repos_url": "https://api.github.com/orgs/kanboardapp/repos", + "events_url": "https://api.github.com/orgs/kanboardapp/events", + "members_url": "https://api.github.com/orgs/kanboardapp/members{/member}", + "public_members_url": "https://api.github.com/orgs/kanboardapp/public_members{/member}", + "avatar_url": "https://avatars.githubusercontent.com/u/8738076?v=3", + "description": null + }, + "sender": { + "login": "fguillot", + "id": 323546, + "avatar_url": "https://avatars.githubusercontent.com/u/323546?v=3", + "gravatar_id": "", + "url": "https://api.github.com/users/fguillot", + "html_url": "https://github.com/fguillot", + "followers_url": "https://api.github.com/users/fguillot/followers", + "following_url": "https://api.github.com/users/fguillot/following{/other_user}", + "gists_url": "https://api.github.com/users/fguillot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/fguillot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/fguillot/subscriptions", + "organizations_url": "https://api.github.com/users/fguillot/orgs", + "repos_url": "https://api.github.com/users/fguillot/repos", + "events_url": "https://api.github.com/users/fguillot/events{/privacy}", + "received_events_url": "https://api.github.com/users/fguillot/received_events", + "type": "User", + "site_admin": false + } +} \ No newline at end of file -- cgit v1.2.3