@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Begin adding test coverage to GitHub Events API parsers

Summary:
Ref T10538.

This is a tiny fraction of the API. GitHub has 25 primary event types; we currently partially parse 3 of them. GitHub has 17 issue event types; we currently partially parse 12.

Test Plan: Ran `arc unit`.

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T10538

Differential Revision: https://secure.phabricator.com/D15448

+2004 -10
+13 -1
.arclint
··· 61 61 "type": "spelling" 62 62 }, 63 63 "text": { 64 - "type": "text" 64 + "type": "text", 65 + "exclude": [ 66 + "(^src/(.*/)?__tests__/[^/]+/.*\\.(txt|json))" 67 + ] 68 + }, 69 + "text-without-length": { 70 + "type": "text", 71 + "include": [ 72 + "(^src/(.*/)?__tests__/[^/]+/.*\\.(txt|json))" 73 + ], 74 + "severity": { 75 + "3": "disabled" 76 + } 65 77 }, 66 78 "xhpast": { 67 79 "type": "xhpast",
+2
src/__phutil_library_map__.php
··· 1426 1426 'NuanceGitHubImportCursor' => 'applications/nuance/cursor/NuanceGitHubImportCursor.php', 1427 1427 'NuanceGitHubIssuesImportCursor' => 'applications/nuance/cursor/NuanceGitHubIssuesImportCursor.php', 1428 1428 'NuanceGitHubRawEvent' => 'applications/nuance/github/NuanceGitHubRawEvent.php', 1429 + 'NuanceGitHubRawEventTestCase' => 'applications/nuance/github/__tests__/NuanceGitHubRawEventTestCase.php', 1429 1430 'NuanceGitHubRepositoryImportCursor' => 'applications/nuance/cursor/NuanceGitHubRepositoryImportCursor.php', 1430 1431 'NuanceGitHubRepositorySourceDefinition' => 'applications/nuance/source/NuanceGitHubRepositorySourceDefinition.php', 1431 1432 'NuanceImportCursor' => 'applications/nuance/cursor/NuanceImportCursor.php', ··· 5687 5688 'NuanceGitHubImportCursor' => 'NuanceImportCursor', 5688 5689 'NuanceGitHubIssuesImportCursor' => 'NuanceGitHubImportCursor', 5689 5690 'NuanceGitHubRawEvent' => 'Phobject', 5691 + 'NuanceGitHubRawEventTestCase' => 'PhabricatorTestCase', 5690 5692 'NuanceGitHubRepositoryImportCursor' => 'NuanceGitHubImportCursor', 5691 5693 'NuanceGitHubRepositorySourceDefinition' => 'NuanceSourceDefinition', 5692 5694 'NuanceImportCursor' => 'Phobject',
+74 -9
src/applications/nuance/github/NuanceGitHubRawEvent.php
··· 30 30 31 31 switch ($this->getIssueRawKind()) { 32 32 case 'IssuesEvent': 33 - case 'IssuesCommentEvent': 34 33 return true; 34 + case 'IssueCommentEvent': 35 + if (!$this->getRawPullRequestData()) { 36 + return true; 37 + } 38 + break; 35 39 } 36 40 37 41 return false; 38 42 } 39 43 40 44 public function isPullRequestEvent() { 45 + if ($this->type == self::TYPE_ISSUE) { 46 + // TODO: This is wrong, some of these are pull events. 47 + return false; 48 + } 49 + 50 + $raw = $this->raw; 51 + 52 + switch ($this->getIssueRawKind()) { 53 + case 'PullRequestEvent': 54 + return true; 55 + case 'IssueCommentEvent': 56 + if ($this->getRawPullRequestData()) { 57 + return true; 58 + } 59 + break; 60 + } 61 + 41 62 return false; 42 63 } 43 64 ··· 46 67 return null; 47 68 } 48 69 70 + return $this->getRawIssueNumber(); 71 + } 72 + 73 + public function getPullRequestNumber() { 74 + if (!$this->isPullRequestEvent()) { 75 + return null; 76 + } 77 + 78 + return $this->getRawIssueNumber(); 79 + } 80 + 81 + private function getRepositoryFullRawName() { 82 + $raw = $this->raw; 83 + 84 + $full = idxv($raw, array('repo', 'name')); 85 + if (strlen($full)) { 86 + return $full; 87 + } 88 + 89 + // For issue events, the repository is not identified explicitly in the 90 + // response body. Parse it out of the URI. 91 + 92 + $matches = null; 93 + $ok = preg_match( 94 + '(/repos/((?:[^/]+)/(?:[^/]+))/issues/events/)', 95 + idx($raw, 'url'), 96 + $matches); 97 + 98 + if ($ok) { 99 + return $matches[1]; 100 + } 101 + 102 + return null; 103 + } 104 + 105 + private function getIssueRawKind() { 106 + $raw = $this->raw; 107 + return idxv($raw, array('type')); 108 + } 109 + 110 + private function getRawIssueNumber() { 49 111 $raw = $this->raw; 50 112 51 113 if ($this->type == self::TYPE_ISSUE) { ··· 53 115 } 54 116 55 117 if ($this->type == self::TYPE_REPOSITORY) { 56 - return idxv($raw, array('payload', 'issue', 'number')); 118 + $issue_number = idxv($raw, array('payload', 'issue', 'number')); 119 + if ($issue_number) { 120 + return $issue_number; 121 + } 122 + 123 + $pull_number = idxv($raw, array('payload', 'number')); 124 + if ($pull_number) { 125 + return $pull_number; 126 + } 57 127 } 58 128 59 129 return null; 60 130 } 61 131 62 - private function getRepositoryFullRawName() { 63 - $raw = $this->raw; 64 - return idxv($raw, array('repo', 'name')); 65 - } 66 - 67 - private function getIssueRawKind() { 132 + private function getRawPullRequestData() { 68 133 $raw = $this->raw; 69 - return idxv($raw, array('type')); 134 + return idxv($raw, array('payload', 'issue', 'pull_request')); 70 135 } 71 136 72 137 }
+108
src/applications/nuance/github/__tests__/NuanceGitHubRawEventTestCase.php
··· 1 + <?php 2 + 3 + final class NuanceGitHubRawEventTestCase 4 + extends PhabricatorTestCase { 5 + 6 + public function testIssueEvents() { 7 + $path = dirname(__FILE__).'/issueevents/'; 8 + 9 + $cases = $this->readTestCases($path); 10 + 11 + foreach ($cases as $name => $info) { 12 + $input = $info['input']; 13 + $expect = $info['expect']; 14 + 15 + $event = NuanceGitHubRawEvent::newEvent( 16 + NuanceGitHubRawEvent::TYPE_ISSUE, 17 + $input); 18 + 19 + $this->assertGitHubRawEventParse($expect, $event, $name); 20 + } 21 + } 22 + 23 + public function testRepositoryEvents() { 24 + $path = dirname(__FILE__).'/repositoryevents/'; 25 + 26 + $cases = $this->readTestCases($path); 27 + 28 + foreach ($cases as $name => $info) { 29 + $input = $info['input']; 30 + $expect = $info['expect']; 31 + 32 + $event = NuanceGitHubRawEvent::newEvent( 33 + NuanceGitHubRawEvent::TYPE_REPOSITORY, 34 + $input); 35 + 36 + $this->assertGitHubRawEventParse($expect, $event, $name); 37 + } 38 + } 39 + 40 + private function assertGitHubRawEventParse( 41 + array $expect, 42 + NuanceGitHubRawEvent $event, 43 + $name) { 44 + 45 + $actual = array( 46 + 'repository.name.full' => $event->getRepositoryFullName(), 47 + 'is.issue' => $event->isIssueEvent(), 48 + 'is.pull' => $event->isPullRequestEvent(), 49 + 'issue.number' => $event->getIssueNumber(), 50 + 'pull.number' => $event->getPullRequestNumber(), 51 + ); 52 + 53 + // Only verify the keys which are actually present in the test. This 54 + // allows tests to specify only relevant keys. 55 + $actual = array_select_keys($actual, array_keys($expect)); 56 + 57 + ksort($expect); 58 + ksort($actual); 59 + 60 + $this->assertEqual($expect, $actual, $name); 61 + } 62 + 63 + private function readTestCases($path) { 64 + $files = Filesystem::listDirectory($path, $include_hidden = false); 65 + 66 + $tests = array(); 67 + foreach ($files as $file) { 68 + $data = Filesystem::readFile($path.$file); 69 + 70 + $parts = preg_split('/^~{5,}$/m', $data); 71 + if (count($parts) < 2) { 72 + throw new Exception( 73 + pht( 74 + 'Expected test file "%s" to contain an input section in JSON, '. 75 + 'then an expected result section in JSON, with the two sections '. 76 + 'separated by a line of "~~~~~", but the divider is not present '. 77 + 'in the file.', 78 + $file)); 79 + } else if (count($parts) > 2) { 80 + throw new Exception( 81 + pht( 82 + 'Expected test file "%s" to contain exactly two sections, '. 83 + 'but it has more than two sections.')); 84 + } 85 + 86 + list($input, $expect) = $parts; 87 + 88 + try { 89 + $input = phutil_json_decode($input); 90 + $expect = phutil_json_decode($expect); 91 + } catch (Exception $ex) { 92 + throw new PhutilProxyException( 93 + pht( 94 + 'Exception while decoding test data for test "%s".', 95 + $file), 96 + $ex); 97 + } 98 + 99 + $tests[$file] = array( 100 + 'input' => $input, 101 + 'expect' => $expect, 102 + ); 103 + } 104 + 105 + return $tests; 106 + } 107 + 108 + }
+114
src/applications/nuance/github/__tests__/issueevents/assigned.txt
··· 1 + { 2 + "id": 583217900, 3 + "url": "https://api.github.com/repos/epriestley/poems/issues/events/583217900", 4 + "actor": { 5 + "login": "epriestley", 6 + "id": 102631, 7 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 8 + "gravatar_id": "", 9 + "url": "https://api.github.com/users/epriestley", 10 + "html_url": "https://github.com/epriestley", 11 + "followers_url": "https://api.github.com/users/epriestley/followers", 12 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 13 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 14 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 15 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 16 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 17 + "repos_url": "https://api.github.com/users/epriestley/repos", 18 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 19 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 20 + "type": "User", 21 + "site_admin": false 22 + }, 23 + "event": "assigned", 24 + "commit_id": null, 25 + "commit_url": null, 26 + "created_at": "2016-03-09T12:42:53Z", 27 + "assignee": { 28 + "login": "epriestley", 29 + "id": 102631, 30 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 31 + "gravatar_id": "", 32 + "url": "https://api.github.com/users/epriestley", 33 + "html_url": "https://github.com/epriestley", 34 + "followers_url": "https://api.github.com/users/epriestley/followers", 35 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 36 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 37 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 38 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 39 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 40 + "repos_url": "https://api.github.com/users/epriestley/repos", 41 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 42 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 43 + "type": "User", 44 + "site_admin": false 45 + }, 46 + "assigner": { 47 + "login": "epriestley", 48 + "id": 102631, 49 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 50 + "gravatar_id": "", 51 + "url": "https://api.github.com/users/epriestley", 52 + "html_url": "https://github.com/epriestley", 53 + "followers_url": "https://api.github.com/users/epriestley/followers", 54 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 55 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 56 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 57 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 58 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 59 + "repos_url": "https://api.github.com/users/epriestley/repos", 60 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 61 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 62 + "type": "User", 63 + "site_admin": false 64 + }, 65 + "issue": { 66 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 67 + "repository_url": "https://api.github.com/repos/epriestley/poems", 68 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 69 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 70 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 71 + "html_url": "https://github.com/epriestley/poems/issues/1", 72 + "id": 139138813, 73 + "number": 1, 74 + "title": "Enforce haiku in commit messages edit", 75 + "user": { 76 + "login": "epriestley", 77 + "id": 102631, 78 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 79 + "gravatar_id": "", 80 + "url": "https://api.github.com/users/epriestley", 81 + "html_url": "https://github.com/epriestley", 82 + "followers_url": "https://api.github.com/users/epriestley/followers", 83 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 84 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 85 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 86 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 87 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 88 + "repos_url": "https://api.github.com/users/epriestley/repos", 89 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 90 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 91 + "type": "User", 92 + "site_admin": false 93 + }, 94 + "labels": [ 95 + 96 + ], 97 + "state": "open", 98 + "locked": false, 99 + "assignee": null, 100 + "milestone": null, 101 + "comments": 5, 102 + "created_at": "2016-03-08T00:41:08Z", 103 + "updated_at": "2016-03-09T14:34:46Z", 104 + "closed_at": null, 105 + "body": "OK" 106 + } 107 + } 108 + ~~~~~ 109 + { 110 + "repository.name.full": "epriestley/poems", 111 + "is.issue": true, 112 + "is.pull": false, 113 + "issue.number": 1 114 + }
+76
src/applications/nuance/github/__tests__/issueevents/closed.txt
··· 1 + { 2 + "id": 583218864, 3 + "url": "https://api.github.com/repos/epriestley/poems/issues/events/583218864", 4 + "actor": { 5 + "login": "epriestley", 6 + "id": 102631, 7 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 8 + "gravatar_id": "", 9 + "url": "https://api.github.com/users/epriestley", 10 + "html_url": "https://github.com/epriestley", 11 + "followers_url": "https://api.github.com/users/epriestley/followers", 12 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 13 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 14 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 15 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 16 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 17 + "repos_url": "https://api.github.com/users/epriestley/repos", 18 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 19 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 20 + "type": "User", 21 + "site_admin": false 22 + }, 23 + "event": "closed", 24 + "commit_id": null, 25 + "commit_url": null, 26 + "created_at": "2016-03-09T12:43:53Z", 27 + "issue": { 28 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 29 + "repository_url": "https://api.github.com/repos/epriestley/poems", 30 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 31 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 32 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 33 + "html_url": "https://github.com/epriestley/poems/issues/1", 34 + "id": 139138813, 35 + "number": 1, 36 + "title": "Enforce haiku in commit messages edit", 37 + "user": { 38 + "login": "epriestley", 39 + "id": 102631, 40 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 41 + "gravatar_id": "", 42 + "url": "https://api.github.com/users/epriestley", 43 + "html_url": "https://github.com/epriestley", 44 + "followers_url": "https://api.github.com/users/epriestley/followers", 45 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 46 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 47 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 48 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 49 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 50 + "repos_url": "https://api.github.com/users/epriestley/repos", 51 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 52 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 53 + "type": "User", 54 + "site_admin": false 55 + }, 56 + "labels": [ 57 + 58 + ], 59 + "state": "open", 60 + "locked": false, 61 + "assignee": null, 62 + "milestone": null, 63 + "comments": 5, 64 + "created_at": "2016-03-08T00:41:08Z", 65 + "updated_at": "2016-03-09T14:34:46Z", 66 + "closed_at": null, 67 + "body": "OK" 68 + } 69 + } 70 + ~~~~~ 71 + { 72 + "repository.name.full": "epriestley/poems", 73 + "is.issue": true, 74 + "is.pull": false, 75 + "issue.number": 1 76 + }
+79
src/applications/nuance/github/__tests__/issueevents/demilestoned.txt
··· 1 + { 2 + "id": 583218613, 3 + "url": "https://api.github.com/repos/epriestley/poems/issues/events/583218613", 4 + "actor": { 5 + "login": "epriestley", 6 + "id": 102631, 7 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 8 + "gravatar_id": "", 9 + "url": "https://api.github.com/users/epriestley", 10 + "html_url": "https://github.com/epriestley", 11 + "followers_url": "https://api.github.com/users/epriestley/followers", 12 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 13 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 14 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 15 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 16 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 17 + "repos_url": "https://api.github.com/users/epriestley/repos", 18 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 19 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 20 + "type": "User", 21 + "site_admin": false 22 + }, 23 + "event": "demilestoned", 24 + "commit_id": null, 25 + "commit_url": null, 26 + "created_at": "2016-03-09T12:43:36Z", 27 + "milestone": { 28 + "title": "b" 29 + }, 30 + "issue": { 31 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 32 + "repository_url": "https://api.github.com/repos/epriestley/poems", 33 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 34 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 35 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 36 + "html_url": "https://github.com/epriestley/poems/issues/1", 37 + "id": 139138813, 38 + "number": 1, 39 + "title": "Enforce haiku in commit messages edit", 40 + "user": { 41 + "login": "epriestley", 42 + "id": 102631, 43 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 44 + "gravatar_id": "", 45 + "url": "https://api.github.com/users/epriestley", 46 + "html_url": "https://github.com/epriestley", 47 + "followers_url": "https://api.github.com/users/epriestley/followers", 48 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 49 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 50 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 51 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 52 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 53 + "repos_url": "https://api.github.com/users/epriestley/repos", 54 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 55 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 56 + "type": "User", 57 + "site_admin": false 58 + }, 59 + "labels": [ 60 + 61 + ], 62 + "state": "open", 63 + "locked": false, 64 + "assignee": null, 65 + "milestone": null, 66 + "comments": 5, 67 + "created_at": "2016-03-08T00:41:08Z", 68 + "updated_at": "2016-03-09T14:34:46Z", 69 + "closed_at": null, 70 + "body": "OK" 71 + } 72 + } 73 + ~~~~~ 74 + { 75 + "repository.name.full": "epriestley/poems", 76 + "is.issue": true, 77 + "is.pull": false, 78 + "issue.number": 1 79 + }
+80
src/applications/nuance/github/__tests__/issueevents/labeled.txt
··· 1 + { 2 + "id": 583217784, 3 + "url": "https://api.github.com/repos/epriestley/poems/issues/events/583217784", 4 + "actor": { 5 + "login": "epriestley", 6 + "id": 102631, 7 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 8 + "gravatar_id": "", 9 + "url": "https://api.github.com/users/epriestley", 10 + "html_url": "https://github.com/epriestley", 11 + "followers_url": "https://api.github.com/users/epriestley/followers", 12 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 13 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 14 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 15 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 16 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 17 + "repos_url": "https://api.github.com/users/epriestley/repos", 18 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 19 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 20 + "type": "User", 21 + "site_admin": false 22 + }, 23 + "event": "labeled", 24 + "commit_id": null, 25 + "commit_url": null, 26 + "created_at": "2016-03-09T12:42:44Z", 27 + "label": { 28 + "name": "bug", 29 + "color": "fc2929" 30 + }, 31 + "issue": { 32 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 33 + "repository_url": "https://api.github.com/repos/epriestley/poems", 34 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 35 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 36 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 37 + "html_url": "https://github.com/epriestley/poems/issues/1", 38 + "id": 139138813, 39 + "number": 1, 40 + "title": "Enforce haiku in commit messages edit", 41 + "user": { 42 + "login": "epriestley", 43 + "id": 102631, 44 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 45 + "gravatar_id": "", 46 + "url": "https://api.github.com/users/epriestley", 47 + "html_url": "https://github.com/epriestley", 48 + "followers_url": "https://api.github.com/users/epriestley/followers", 49 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 50 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 51 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 52 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 53 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 54 + "repos_url": "https://api.github.com/users/epriestley/repos", 55 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 56 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 57 + "type": "User", 58 + "site_admin": false 59 + }, 60 + "labels": [ 61 + 62 + ], 63 + "state": "open", 64 + "locked": false, 65 + "assignee": null, 66 + "milestone": null, 67 + "comments": 5, 68 + "created_at": "2016-03-08T00:41:08Z", 69 + "updated_at": "2016-03-09T14:34:46Z", 70 + "closed_at": null, 71 + "body": "OK" 72 + } 73 + } 74 + ~~~~~ 75 + { 76 + "repository.name.full": "epriestley/poems", 77 + "is.issue": true, 78 + "is.pull": false, 79 + "issue.number": 1 80 + }
+76
src/applications/nuance/github/__tests__/issueevents/locked.txt
··· 1 + { 2 + "id": 583218006, 3 + "url": "https://api.github.com/repos/epriestley/poems/issues/events/583218006", 4 + "actor": { 5 + "login": "epriestley", 6 + "id": 102631, 7 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 8 + "gravatar_id": "", 9 + "url": "https://api.github.com/users/epriestley", 10 + "html_url": "https://github.com/epriestley", 11 + "followers_url": "https://api.github.com/users/epriestley/followers", 12 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 13 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 14 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 15 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 16 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 17 + "repos_url": "https://api.github.com/users/epriestley/repos", 18 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 19 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 20 + "type": "User", 21 + "site_admin": false 22 + }, 23 + "event": "locked", 24 + "commit_id": null, 25 + "commit_url": null, 26 + "created_at": "2016-03-09T12:42:58Z", 27 + "issue": { 28 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 29 + "repository_url": "https://api.github.com/repos/epriestley/poems", 30 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 31 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 32 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 33 + "html_url": "https://github.com/epriestley/poems/issues/1", 34 + "id": 139138813, 35 + "number": 1, 36 + "title": "Enforce haiku in commit messages edit", 37 + "user": { 38 + "login": "epriestley", 39 + "id": 102631, 40 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 41 + "gravatar_id": "", 42 + "url": "https://api.github.com/users/epriestley", 43 + "html_url": "https://github.com/epriestley", 44 + "followers_url": "https://api.github.com/users/epriestley/followers", 45 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 46 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 47 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 48 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 49 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 50 + "repos_url": "https://api.github.com/users/epriestley/repos", 51 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 52 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 53 + "type": "User", 54 + "site_admin": false 55 + }, 56 + "labels": [ 57 + 58 + ], 59 + "state": "open", 60 + "locked": false, 61 + "assignee": null, 62 + "milestone": null, 63 + "comments": 5, 64 + "created_at": "2016-03-08T00:41:08Z", 65 + "updated_at": "2016-03-09T14:34:46Z", 66 + "closed_at": null, 67 + "body": "OK" 68 + } 69 + } 70 + ~~~~~ 71 + { 72 + "repository.name.full": "epriestley/poems", 73 + "is.issue": true, 74 + "is.pull": false, 75 + "issue.number": 1 76 + }
+79
src/applications/nuance/github/__tests__/issueevents/milestoned.txt
··· 1 + { 2 + "id": 583217866, 3 + "url": "https://api.github.com/repos/epriestley/poems/issues/events/583217866", 4 + "actor": { 5 + "login": "epriestley", 6 + "id": 102631, 7 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 8 + "gravatar_id": "", 9 + "url": "https://api.github.com/users/epriestley", 10 + "html_url": "https://github.com/epriestley", 11 + "followers_url": "https://api.github.com/users/epriestley/followers", 12 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 13 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 14 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 15 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 16 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 17 + "repos_url": "https://api.github.com/users/epriestley/repos", 18 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 19 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 20 + "type": "User", 21 + "site_admin": false 22 + }, 23 + "event": "milestoned", 24 + "commit_id": null, 25 + "commit_url": null, 26 + "created_at": "2016-03-09T12:42:50Z", 27 + "milestone": { 28 + "title": "b" 29 + }, 30 + "issue": { 31 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 32 + "repository_url": "https://api.github.com/repos/epriestley/poems", 33 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 34 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 35 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 36 + "html_url": "https://github.com/epriestley/poems/issues/1", 37 + "id": 139138813, 38 + "number": 1, 39 + "title": "Enforce haiku in commit messages edit", 40 + "user": { 41 + "login": "epriestley", 42 + "id": 102631, 43 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 44 + "gravatar_id": "", 45 + "url": "https://api.github.com/users/epriestley", 46 + "html_url": "https://github.com/epriestley", 47 + "followers_url": "https://api.github.com/users/epriestley/followers", 48 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 49 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 50 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 51 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 52 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 53 + "repos_url": "https://api.github.com/users/epriestley/repos", 54 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 55 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 56 + "type": "User", 57 + "site_admin": false 58 + }, 59 + "labels": [ 60 + 61 + ], 62 + "state": "open", 63 + "locked": false, 64 + "assignee": null, 65 + "milestone": null, 66 + "comments": 5, 67 + "created_at": "2016-03-08T00:41:08Z", 68 + "updated_at": "2016-03-09T14:34:46Z", 69 + "closed_at": null, 70 + "body": "OK" 71 + } 72 + } 73 + ~~~~~ 74 + { 75 + "repository.name.full": "epriestley/poems", 76 + "is.issue": true, 77 + "is.pull": false, 78 + "issue.number": 1 79 + }
+80
src/applications/nuance/github/__tests__/issueevents/renamed.txt
··· 1 + { 2 + "id": 583218162, 3 + "url": "https://api.github.com/repos/epriestley/poems/issues/events/583218162", 4 + "actor": { 5 + "login": "epriestley", 6 + "id": 102631, 7 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 8 + "gravatar_id": "", 9 + "url": "https://api.github.com/users/epriestley", 10 + "html_url": "https://github.com/epriestley", 11 + "followers_url": "https://api.github.com/users/epriestley/followers", 12 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 13 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 14 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 15 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 16 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 17 + "repos_url": "https://api.github.com/users/epriestley/repos", 18 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 19 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 20 + "type": "User", 21 + "site_admin": false 22 + }, 23 + "event": "renamed", 24 + "commit_id": null, 25 + "commit_url": null, 26 + "created_at": "2016-03-09T12:43:07Z", 27 + "rename": { 28 + "from": "Enforce haiku in commit messages", 29 + "to": "Enforce haiku in commit messages edit" 30 + }, 31 + "issue": { 32 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 33 + "repository_url": "https://api.github.com/repos/epriestley/poems", 34 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 35 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 36 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 37 + "html_url": "https://github.com/epriestley/poems/issues/1", 38 + "id": 139138813, 39 + "number": 1, 40 + "title": "Enforce haiku in commit messages edit", 41 + "user": { 42 + "login": "epriestley", 43 + "id": 102631, 44 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 45 + "gravatar_id": "", 46 + "url": "https://api.github.com/users/epriestley", 47 + "html_url": "https://github.com/epriestley", 48 + "followers_url": "https://api.github.com/users/epriestley/followers", 49 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 50 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 51 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 52 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 53 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 54 + "repos_url": "https://api.github.com/users/epriestley/repos", 55 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 56 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 57 + "type": "User", 58 + "site_admin": false 59 + }, 60 + "labels": [ 61 + 62 + ], 63 + "state": "open", 64 + "locked": false, 65 + "assignee": null, 66 + "milestone": null, 67 + "comments": 5, 68 + "created_at": "2016-03-08T00:41:08Z", 69 + "updated_at": "2016-03-09T14:34:46Z", 70 + "closed_at": null, 71 + "body": "OK" 72 + } 73 + } 74 + ~~~~~ 75 + { 76 + "repository.name.full": "epriestley/poems", 77 + "is.issue": true, 78 + "is.pull": false, 79 + "issue.number": 1 80 + }
+76
src/applications/nuance/github/__tests__/issueevents/reopened.txt
··· 1 + { 2 + "id": 583218814, 3 + "url": "https://api.github.com/repos/epriestley/poems/issues/events/583218814", 4 + "actor": { 5 + "login": "epriestley", 6 + "id": 102631, 7 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 8 + "gravatar_id": "", 9 + "url": "https://api.github.com/users/epriestley", 10 + "html_url": "https://github.com/epriestley", 11 + "followers_url": "https://api.github.com/users/epriestley/followers", 12 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 13 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 14 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 15 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 16 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 17 + "repos_url": "https://api.github.com/users/epriestley/repos", 18 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 19 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 20 + "type": "User", 21 + "site_admin": false 22 + }, 23 + "event": "reopened", 24 + "commit_id": null, 25 + "commit_url": null, 26 + "created_at": "2016-03-09T12:43:50Z", 27 + "issue": { 28 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 29 + "repository_url": "https://api.github.com/repos/epriestley/poems", 30 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 31 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 32 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 33 + "html_url": "https://github.com/epriestley/poems/issues/1", 34 + "id": 139138813, 35 + "number": 1, 36 + "title": "Enforce haiku in commit messages edit", 37 + "user": { 38 + "login": "epriestley", 39 + "id": 102631, 40 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 41 + "gravatar_id": "", 42 + "url": "https://api.github.com/users/epriestley", 43 + "html_url": "https://github.com/epriestley", 44 + "followers_url": "https://api.github.com/users/epriestley/followers", 45 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 46 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 47 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 48 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 49 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 50 + "repos_url": "https://api.github.com/users/epriestley/repos", 51 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 52 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 53 + "type": "User", 54 + "site_admin": false 55 + }, 56 + "labels": [ 57 + 58 + ], 59 + "state": "open", 60 + "locked": false, 61 + "assignee": null, 62 + "milestone": null, 63 + "comments": 5, 64 + "created_at": "2016-03-08T00:41:08Z", 65 + "updated_at": "2016-03-09T14:34:46Z", 66 + "closed_at": null, 67 + "body": "OK" 68 + } 69 + } 70 + ~~~~~ 71 + { 72 + "repository.name.full": "epriestley/poems", 73 + "is.issue": true, 74 + "is.pull": false, 75 + "issue.number": 1 76 + }
+114
src/applications/nuance/github/__tests__/issueevents/unassigned.txt
··· 1 + { 2 + "id": 583218511, 3 + "url": "https://api.github.com/repos/epriestley/poems/issues/events/583218511", 4 + "actor": { 5 + "login": "epriestley", 6 + "id": 102631, 7 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 8 + "gravatar_id": "", 9 + "url": "https://api.github.com/users/epriestley", 10 + "html_url": "https://github.com/epriestley", 11 + "followers_url": "https://api.github.com/users/epriestley/followers", 12 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 13 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 14 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 15 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 16 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 17 + "repos_url": "https://api.github.com/users/epriestley/repos", 18 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 19 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 20 + "type": "User", 21 + "site_admin": false 22 + }, 23 + "event": "unassigned", 24 + "commit_id": null, 25 + "commit_url": null, 26 + "created_at": "2016-03-09T12:43:29Z", 27 + "assignee": { 28 + "login": "epriestley", 29 + "id": 102631, 30 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 31 + "gravatar_id": "", 32 + "url": "https://api.github.com/users/epriestley", 33 + "html_url": "https://github.com/epriestley", 34 + "followers_url": "https://api.github.com/users/epriestley/followers", 35 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 36 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 37 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 38 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 39 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 40 + "repos_url": "https://api.github.com/users/epriestley/repos", 41 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 42 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 43 + "type": "User", 44 + "site_admin": false 45 + }, 46 + "assigner": { 47 + "login": "epriestley", 48 + "id": 102631, 49 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 50 + "gravatar_id": "", 51 + "url": "https://api.github.com/users/epriestley", 52 + "html_url": "https://github.com/epriestley", 53 + "followers_url": "https://api.github.com/users/epriestley/followers", 54 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 55 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 56 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 57 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 58 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 59 + "repos_url": "https://api.github.com/users/epriestley/repos", 60 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 61 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 62 + "type": "User", 63 + "site_admin": false 64 + }, 65 + "issue": { 66 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 67 + "repository_url": "https://api.github.com/repos/epriestley/poems", 68 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 69 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 70 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 71 + "html_url": "https://github.com/epriestley/poems/issues/1", 72 + "id": 139138813, 73 + "number": 1, 74 + "title": "Enforce haiku in commit messages edit", 75 + "user": { 76 + "login": "epriestley", 77 + "id": 102631, 78 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 79 + "gravatar_id": "", 80 + "url": "https://api.github.com/users/epriestley", 81 + "html_url": "https://github.com/epriestley", 82 + "followers_url": "https://api.github.com/users/epriestley/followers", 83 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 84 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 85 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 86 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 87 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 88 + "repos_url": "https://api.github.com/users/epriestley/repos", 89 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 90 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 91 + "type": "User", 92 + "site_admin": false 93 + }, 94 + "labels": [ 95 + 96 + ], 97 + "state": "open", 98 + "locked": false, 99 + "assignee": null, 100 + "milestone": null, 101 + "comments": 5, 102 + "created_at": "2016-03-08T00:41:08Z", 103 + "updated_at": "2016-03-09T14:34:46Z", 104 + "closed_at": null, 105 + "body": "OK" 106 + } 107 + } 108 + ~~~~~ 109 + { 110 + "repository.name.full": "epriestley/poems", 111 + "is.issue": true, 112 + "is.pull": false, 113 + "issue.number": 1 114 + }
+80
src/applications/nuance/github/__tests__/issueevents/unlabeled.txt
··· 1 + { 2 + "id": 583218703, 3 + "url": "https://api.github.com/repos/epriestley/poems/issues/events/583218703", 4 + "actor": { 5 + "login": "epriestley", 6 + "id": 102631, 7 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 8 + "gravatar_id": "", 9 + "url": "https://api.github.com/users/epriestley", 10 + "html_url": "https://github.com/epriestley", 11 + "followers_url": "https://api.github.com/users/epriestley/followers", 12 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 13 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 14 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 15 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 16 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 17 + "repos_url": "https://api.github.com/users/epriestley/repos", 18 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 19 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 20 + "type": "User", 21 + "site_admin": false 22 + }, 23 + "event": "unlabeled", 24 + "commit_id": null, 25 + "commit_url": null, 26 + "created_at": "2016-03-09T12:43:42Z", 27 + "label": { 28 + "name": "bug", 29 + "color": "fc2929" 30 + }, 31 + "issue": { 32 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 33 + "repository_url": "https://api.github.com/repos/epriestley/poems", 34 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 35 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 36 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 37 + "html_url": "https://github.com/epriestley/poems/issues/1", 38 + "id": 139138813, 39 + "number": 1, 40 + "title": "Enforce haiku in commit messages edit", 41 + "user": { 42 + "login": "epriestley", 43 + "id": 102631, 44 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 45 + "gravatar_id": "", 46 + "url": "https://api.github.com/users/epriestley", 47 + "html_url": "https://github.com/epriestley", 48 + "followers_url": "https://api.github.com/users/epriestley/followers", 49 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 50 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 51 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 52 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 53 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 54 + "repos_url": "https://api.github.com/users/epriestley/repos", 55 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 56 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 57 + "type": "User", 58 + "site_admin": false 59 + }, 60 + "labels": [ 61 + 62 + ], 63 + "state": "open", 64 + "locked": false, 65 + "assignee": null, 66 + "milestone": null, 67 + "comments": 5, 68 + "created_at": "2016-03-08T00:41:08Z", 69 + "updated_at": "2016-03-09T14:34:46Z", 70 + "closed_at": null, 71 + "body": "OK" 72 + } 73 + } 74 + ~~~~~ 75 + { 76 + "repository.name.full": "epriestley/poems", 77 + "is.issue": true, 78 + "is.pull": false, 79 + "issue.number": 1 80 + }
+76
src/applications/nuance/github/__tests__/issueevents/unlocked.txt
··· 1 + { 2 + "id": 583218062, 3 + "url": "https://api.github.com/repos/epriestley/poems/issues/events/583218062", 4 + "actor": { 5 + "login": "epriestley", 6 + "id": 102631, 7 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 8 + "gravatar_id": "", 9 + "url": "https://api.github.com/users/epriestley", 10 + "html_url": "https://github.com/epriestley", 11 + "followers_url": "https://api.github.com/users/epriestley/followers", 12 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 13 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 14 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 15 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 16 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 17 + "repos_url": "https://api.github.com/users/epriestley/repos", 18 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 19 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 20 + "type": "User", 21 + "site_admin": false 22 + }, 23 + "event": "unlocked", 24 + "commit_id": null, 25 + "commit_url": null, 26 + "created_at": "2016-03-09T12:43:01Z", 27 + "issue": { 28 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 29 + "repository_url": "https://api.github.com/repos/epriestley/poems", 30 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 31 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 32 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 33 + "html_url": "https://github.com/epriestley/poems/issues/1", 34 + "id": 139138813, 35 + "number": 1, 36 + "title": "Enforce haiku in commit messages edit", 37 + "user": { 38 + "login": "epriestley", 39 + "id": 102631, 40 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 41 + "gravatar_id": "", 42 + "url": "https://api.github.com/users/epriestley", 43 + "html_url": "https://github.com/epriestley", 44 + "followers_url": "https://api.github.com/users/epriestley/followers", 45 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 46 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 47 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 48 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 49 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 50 + "repos_url": "https://api.github.com/users/epriestley/repos", 51 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 52 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 53 + "type": "User", 54 + "site_admin": false 55 + }, 56 + "labels": [ 57 + 58 + ], 59 + "state": "open", 60 + "locked": false, 61 + "assignee": null, 62 + "milestone": null, 63 + "comments": 5, 64 + "created_at": "2016-03-08T00:41:08Z", 65 + "updated_at": "2016-03-09T14:34:46Z", 66 + "closed_at": null, 67 + "body": "OK" 68 + } 69 + } 70 + ~~~~~ 71 + { 72 + "repository.name.full": "epriestley/poems", 73 + "is.issue": true, 74 + "is.pull": false, 75 + "issue.number": 1 76 + }
+161
src/applications/nuance/github/__tests__/repositoryevents/IssueCommentEvent.created.pull.txt
··· 1 + { 2 + "id": "3740938746", 3 + "type": "IssueCommentEvent", 4 + "actor": { 5 + "id": 102631, 6 + "login": "epriestley", 7 + "gravatar_id": "", 8 + "url": "https://api.github.com/users/epriestley", 9 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?" 10 + }, 11 + "repo": { 12 + "id": 14627834, 13 + "name": "epriestley/poems", 14 + "url": "https://api.github.com/repos/epriestley/poems" 15 + }, 16 + "payload": { 17 + "action": "created", 18 + "issue": { 19 + "url": "https://api.github.com/repos/epriestley/poems/issues/2", 20 + "repository_url": "https://api.github.com/repos/epriestley/poems", 21 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/2/labels{/name}", 22 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/2/comments", 23 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/2/events", 24 + "html_url": "https://github.com/epriestley/poems/pull/2", 25 + "id": 139568860, 26 + "number": 2, 27 + "title": "Please Merge Quack2 into Feature", 28 + "user": { 29 + "login": "epriestley", 30 + "id": 102631, 31 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 32 + "gravatar_id": "", 33 + "url": "https://api.github.com/users/epriestley", 34 + "html_url": "https://github.com/epriestley", 35 + "followers_url": "https://api.github.com/users/epriestley/followers", 36 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 37 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 38 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 39 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 40 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 41 + "repos_url": "https://api.github.com/users/epriestley/repos", 42 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 43 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 44 + "type": "User", 45 + "site_admin": false 46 + }, 47 + "labels": [ 48 + { 49 + "url": "https://api.github.com/repos/epriestley/poems/labels/bug", 50 + "name": "bug", 51 + "color": "fc2929" 52 + } 53 + ], 54 + "state": "open", 55 + "locked": false, 56 + "assignee": { 57 + "login": "epriestley", 58 + "id": 102631, 59 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 60 + "gravatar_id": "", 61 + "url": "https://api.github.com/users/epriestley", 62 + "html_url": "https://github.com/epriestley", 63 + "followers_url": "https://api.github.com/users/epriestley/followers", 64 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 65 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 66 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 67 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 68 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 69 + "repos_url": "https://api.github.com/users/epriestley/repos", 70 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 71 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 72 + "type": "User", 73 + "site_admin": false 74 + }, 75 + "milestone": { 76 + "url": "https://api.github.com/repos/epriestley/poems/milestones/1", 77 + "html_url": "https://github.com/epriestley/poems/milestones/b", 78 + "labels_url": "https://api.github.com/repos/epriestley/poems/milestones/1/labels", 79 + "id": 1633589, 80 + "number": 1, 81 + "title": "b", 82 + "description": null, 83 + "creator": { 84 + "login": "epriestley", 85 + "id": 102631, 86 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 87 + "gravatar_id": "", 88 + "url": "https://api.github.com/users/epriestley", 89 + "html_url": "https://github.com/epriestley", 90 + "followers_url": "https://api.github.com/users/epriestley/followers", 91 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 92 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 93 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 94 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 95 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 96 + "repos_url": "https://api.github.com/users/epriestley/repos", 97 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 98 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 99 + "type": "User", 100 + "site_admin": false 101 + }, 102 + "open_issues": 1, 103 + "closed_issues": 0, 104 + "state": "open", 105 + "created_at": "2016-03-09T12:42:50Z", 106 + "updated_at": "2016-03-09T12:52:41Z", 107 + "due_on": null, 108 + "closed_at": null 109 + }, 110 + "comments": 1, 111 + "created_at": "2016-03-09T12:52:31Z", 112 + "updated_at": "2016-03-09T12:53:06Z", 113 + "closed_at": null, 114 + "pull_request": { 115 + "url": "https://api.github.com/repos/epriestley/poems/pulls/2", 116 + "html_url": "https://github.com/epriestley/poems/pull/2", 117 + "diff_url": "https://github.com/epriestley/poems/pull/2.diff", 118 + "patch_url": "https://github.com/epriestley/poems/pull/2.patch" 119 + }, 120 + "body": "" 121 + }, 122 + "comment": { 123 + "url": "https://api.github.com/repos/epriestley/poems/issues/comments/194282800", 124 + "html_url": "https://github.com/epriestley/poems/pull/2#issuecomment-194282800", 125 + "issue_url": "https://api.github.com/repos/epriestley/poems/issues/2", 126 + "id": 194282800, 127 + "user": { 128 + "login": "epriestley", 129 + "id": 102631, 130 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 131 + "gravatar_id": "", 132 + "url": "https://api.github.com/users/epriestley", 133 + "html_url": "https://github.com/epriestley", 134 + "followers_url": "https://api.github.com/users/epriestley/followers", 135 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 136 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 137 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 138 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 139 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 140 + "repos_url": "https://api.github.com/users/epriestley/repos", 141 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 142 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 143 + "type": "User", 144 + "site_admin": false 145 + }, 146 + "created_at": "2016-03-09T12:53:06Z", 147 + "updated_at": "2016-03-09T12:53:06Z", 148 + "body": "wub wub" 149 + } 150 + }, 151 + "public": true, 152 + "created_at": "2016-03-09T12:53:06Z" 153 + } 154 + ~~~~~ 155 + { 156 + "repository.name.full": "epriestley/poems", 157 + "is.issue": false, 158 + "is.pull": true, 159 + "issue.number": null, 160 + "pull.number": 2 161 + }
+98
src/applications/nuance/github/__tests__/repositoryevents/IssueCommentEvent.created.txt
··· 1 + { 2 + "id": "3733510485", 3 + "type": "IssueCommentEvent", 4 + "actor": { 5 + "id": 102631, 6 + "login": "epriestley", 7 + "gravatar_id": "", 8 + "url": "https://api.github.com/users/epriestley", 9 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?" 10 + }, 11 + "repo": { 12 + "id": 14627834, 13 + "name": "epriestley/poems", 14 + "url": "https://api.github.com/repos/epriestley/poems" 15 + }, 16 + "payload": { 17 + "action": "created", 18 + "issue": { 19 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 20 + "repository_url": "https://api.github.com/repos/epriestley/poems", 21 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 22 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 23 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 24 + "html_url": "https://github.com/epriestley/poems/issues/1", 25 + "id": 139138813, 26 + "number": 1, 27 + "title": "Enforce haiku in commit messages", 28 + "user": { 29 + "login": "epriestley", 30 + "id": 102631, 31 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 32 + "gravatar_id": "", 33 + "url": "https://api.github.com/users/epriestley", 34 + "html_url": "https://github.com/epriestley", 35 + "followers_url": "https://api.github.com/users/epriestley/followers", 36 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 37 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 38 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 39 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 40 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 41 + "repos_url": "https://api.github.com/users/epriestley/repos", 42 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 43 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 44 + "type": "User", 45 + "site_admin": false 46 + }, 47 + "labels": [ 48 + 49 + ], 50 + "state": "open", 51 + "locked": false, 52 + "assignee": null, 53 + "milestone": null, 54 + "comments": 1, 55 + "created_at": "2016-03-08T00:41:08Z", 56 + "updated_at": "2016-03-08T00:41:22Z", 57 + "closed_at": null, 58 + "body": "OK" 59 + }, 60 + "comment": { 61 + "url": "https://api.github.com/repos/epriestley/poems/issues/comments/193528669", 62 + "html_url": "https://github.com/epriestley/poems/issues/1#issuecomment-193528669", 63 + "issue_url": "https://api.github.com/repos/epriestley/poems/issues/1", 64 + "id": 193528669, 65 + "user": { 66 + "login": "epriestley", 67 + "id": 102631, 68 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 69 + "gravatar_id": "", 70 + "url": "https://api.github.com/users/epriestley", 71 + "html_url": "https://github.com/epriestley", 72 + "followers_url": "https://api.github.com/users/epriestley/followers", 73 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 74 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 75 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 76 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 77 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 78 + "repos_url": "https://api.github.com/users/epriestley/repos", 79 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 80 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 81 + "type": "User", 82 + "site_admin": false 83 + }, 84 + "created_at": "2016-03-08T00:41:22Z", 85 + "updated_at": "2016-03-08T00:41:22Z", 86 + "body": "comment on issue" 87 + } 88 + }, 89 + "public": true, 90 + "created_at": "2016-03-08T00:41:22Z" 91 + } 92 + ~~~~~ 93 + { 94 + "repository.name.full": "epriestley/poems", 95 + "is.issue": true, 96 + "is.pull": false, 97 + "issue.number": 1 98 + }
+70
src/applications/nuance/github/__tests__/repositoryevents/IssuesEvent.closed.txt
··· 1 + { 2 + "id": "3740905151", 3 + "type": "IssuesEvent", 4 + "actor": { 5 + "id": 102631, 6 + "login": "epriestley", 7 + "gravatar_id": "", 8 + "url": "https://api.github.com/users/epriestley", 9 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?" 10 + }, 11 + "repo": { 12 + "id": 14627834, 13 + "name": "epriestley/poems", 14 + "url": "https://api.github.com/repos/epriestley/poems" 15 + }, 16 + "payload": { 17 + "action": "closed", 18 + "issue": { 19 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 20 + "repository_url": "https://api.github.com/repos/epriestley/poems", 21 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 22 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 23 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 24 + "html_url": "https://github.com/epriestley/poems/issues/1", 25 + "id": 139138813, 26 + "number": 1, 27 + "title": "Enforce haiku in commit messages edit", 28 + "user": { 29 + "login": "epriestley", 30 + "id": 102631, 31 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 32 + "gravatar_id": "", 33 + "url": "https://api.github.com/users/epriestley", 34 + "html_url": "https://github.com/epriestley", 35 + "followers_url": "https://api.github.com/users/epriestley/followers", 36 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 37 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 38 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 39 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 40 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 41 + "repos_url": "https://api.github.com/users/epriestley/repos", 42 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 43 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 44 + "type": "User", 45 + "site_admin": false 46 + }, 47 + "labels": [ 48 + 49 + ], 50 + "state": "closed", 51 + "locked": false, 52 + "assignee": null, 53 + "milestone": null, 54 + "comments": 2, 55 + "created_at": "2016-03-08T00:41:08Z", 56 + "updated_at": "2016-03-09T12:43:48Z", 57 + "closed_at": "2016-03-09T12:43:48Z", 58 + "body": "OK" 59 + } 60 + }, 61 + "public": true, 62 + "created_at": "2016-03-09T12:43:48Z" 63 + } 64 + ~~~~~ 65 + { 66 + "repository.name.full": "epriestley/poems", 67 + "is.issue": true, 68 + "is.pull": false, 69 + "issue.number": 1 70 + }
+70
src/applications/nuance/github/__tests__/repositoryevents/IssuesEvent.opened.txt
··· 1 + { 2 + "id": "3733509737", 3 + "type": "IssuesEvent", 4 + "actor": { 5 + "id": 102631, 6 + "login": "epriestley", 7 + "gravatar_id": "", 8 + "url": "https://api.github.com/users/epriestley", 9 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?" 10 + }, 11 + "repo": { 12 + "id": 14627834, 13 + "name": "epriestley/poems", 14 + "url": "https://api.github.com/repos/epriestley/poems" 15 + }, 16 + "payload": { 17 + "action": "opened", 18 + "issue": { 19 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 20 + "repository_url": "https://api.github.com/repos/epriestley/poems", 21 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 22 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 23 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 24 + "html_url": "https://github.com/epriestley/poems/issues/1", 25 + "id": 139138813, 26 + "number": 1, 27 + "title": "Enforce haiku in commit messages", 28 + "user": { 29 + "login": "epriestley", 30 + "id": 102631, 31 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 32 + "gravatar_id": "", 33 + "url": "https://api.github.com/users/epriestley", 34 + "html_url": "https://github.com/epriestley", 35 + "followers_url": "https://api.github.com/users/epriestley/followers", 36 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 37 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 38 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 39 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 40 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 41 + "repos_url": "https://api.github.com/users/epriestley/repos", 42 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 43 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 44 + "type": "User", 45 + "site_admin": false 46 + }, 47 + "labels": [ 48 + 49 + ], 50 + "state": "open", 51 + "locked": false, 52 + "assignee": null, 53 + "milestone": null, 54 + "comments": 0, 55 + "created_at": "2016-03-08T00:41:08Z", 56 + "updated_at": "2016-03-08T00:41:08Z", 57 + "closed_at": null, 58 + "body": "OK" 59 + } 60 + }, 61 + "public": true, 62 + "created_at": "2016-03-08T00:41:08Z" 63 + } 64 + ~~~~~ 65 + { 66 + "repository.name.full": "epriestley/poems", 67 + "is.issue": true, 68 + "is.pull": false, 69 + "issue.number": 1 70 + }
+70
src/applications/nuance/github/__tests__/repositoryevents/IssuesEvent.reopened.txt
··· 1 + { 2 + "id": "3740908680", 3 + "type": "IssuesEvent", 4 + "actor": { 5 + "id": 102631, 6 + "login": "epriestley", 7 + "gravatar_id": "", 8 + "url": "https://api.github.com/users/epriestley", 9 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?" 10 + }, 11 + "repo": { 12 + "id": 14627834, 13 + "name": "epriestley/poems", 14 + "url": "https://api.github.com/repos/epriestley/poems" 15 + }, 16 + "payload": { 17 + "action": "reopened", 18 + "issue": { 19 + "url": "https://api.github.com/repos/epriestley/poems/issues/1", 20 + "repository_url": "https://api.github.com/repos/epriestley/poems", 21 + "labels_url": "https://api.github.com/repos/epriestley/poems/issues/1/labels{/name}", 22 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/1/comments", 23 + "events_url": "https://api.github.com/repos/epriestley/poems/issues/1/events", 24 + "html_url": "https://github.com/epriestley/poems/issues/1", 25 + "id": 139138813, 26 + "number": 1, 27 + "title": "Enforce haiku in commit messages edit", 28 + "user": { 29 + "login": "epriestley", 30 + "id": 102631, 31 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 32 + "gravatar_id": "", 33 + "url": "https://api.github.com/users/epriestley", 34 + "html_url": "https://github.com/epriestley", 35 + "followers_url": "https://api.github.com/users/epriestley/followers", 36 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 37 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 38 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 39 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 40 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 41 + "repos_url": "https://api.github.com/users/epriestley/repos", 42 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 43 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 44 + "type": "User", 45 + "site_admin": false 46 + }, 47 + "labels": [ 48 + 49 + ], 50 + "state": "open", 51 + "locked": false, 52 + "assignee": null, 53 + "milestone": null, 54 + "comments": 3, 55 + "created_at": "2016-03-08T00:41:08Z", 56 + "updated_at": "2016-03-09T12:44:49Z", 57 + "closed_at": null, 58 + "body": "OK" 59 + } 60 + }, 61 + "public": true, 62 + "created_at": "2016-03-09T12:44:49Z" 63 + } 64 + ~~~~~ 65 + { 66 + "repository.name.full": "epriestley/poems", 67 + "is.issue": true, 68 + "is.pull": false, 69 + "issue.number": 1 70 + }
+334
src/applications/nuance/github/__tests__/repositoryevents/PullRequestEvent.opened.txt
··· 1 + { 2 + "id": "3740936638", 3 + "type": "PullRequestEvent", 4 + "actor": { 5 + "id": 102631, 6 + "login": "epriestley", 7 + "gravatar_id": "", 8 + "url": "https://api.github.com/users/epriestley", 9 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?" 10 + }, 11 + "repo": { 12 + "id": 14627834, 13 + "name": "epriestley/poems", 14 + "url": "https://api.github.com/repos/epriestley/poems" 15 + }, 16 + "payload": { 17 + "action": "opened", 18 + "number": 2, 19 + "pull_request": { 20 + "url": "https://api.github.com/repos/epriestley/poems/pulls/2", 21 + "id": 62223852, 22 + "html_url": "https://github.com/epriestley/poems/pull/2", 23 + "diff_url": "https://github.com/epriestley/poems/pull/2.diff", 24 + "patch_url": "https://github.com/epriestley/poems/pull/2.patch", 25 + "issue_url": "https://api.github.com/repos/epriestley/poems/issues/2", 26 + "number": 2, 27 + "state": "open", 28 + "locked": false, 29 + "title": "Please Merge Quack2 into Feature", 30 + "user": { 31 + "login": "epriestley", 32 + "id": 102631, 33 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 34 + "gravatar_id": "", 35 + "url": "https://api.github.com/users/epriestley", 36 + "html_url": "https://github.com/epriestley", 37 + "followers_url": "https://api.github.com/users/epriestley/followers", 38 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 39 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 40 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 41 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 42 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 43 + "repos_url": "https://api.github.com/users/epriestley/repos", 44 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 45 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 46 + "type": "User", 47 + "site_admin": false 48 + }, 49 + "body": "", 50 + "created_at": "2016-03-09T12:52:31Z", 51 + "updated_at": "2016-03-09T12:52:31Z", 52 + "closed_at": null, 53 + "merged_at": null, 54 + "merge_commit_sha": null, 55 + "assignee": null, 56 + "milestone": null, 57 + "commits_url": "https://api.github.com/repos/epriestley/poems/pulls/2/commits", 58 + "review_comments_url": "https://api.github.com/repos/epriestley/poems/pulls/2/comments", 59 + "review_comment_url": "https://api.github.com/repos/epriestley/poems/pulls/comments{/number}", 60 + "comments_url": "https://api.github.com/repos/epriestley/poems/issues/2/comments", 61 + "statuses_url": "https://api.github.com/repos/epriestley/poems/statuses/6cf5f6d0c8c06c4c73b8783666d9b3ecce138244", 62 + "head": { 63 + "label": "epriestley:feature", 64 + "ref": "feature", 65 + "sha": "6cf5f6d0c8c06c4c73b8783666d9b3ecce138244", 66 + "user": { 67 + "login": "epriestley", 68 + "id": 102631, 69 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 70 + "gravatar_id": "", 71 + "url": "https://api.github.com/users/epriestley", 72 + "html_url": "https://github.com/epriestley", 73 + "followers_url": "https://api.github.com/users/epriestley/followers", 74 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 75 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 76 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 77 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 78 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 79 + "repos_url": "https://api.github.com/users/epriestley/repos", 80 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 81 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 82 + "type": "User", 83 + "site_admin": false 84 + }, 85 + "repo": { 86 + "id": 14627834, 87 + "name": "poems", 88 + "full_name": "epriestley/poems", 89 + "owner": { 90 + "login": "epriestley", 91 + "id": 102631, 92 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 93 + "gravatar_id": "", 94 + "url": "https://api.github.com/users/epriestley", 95 + "html_url": "https://github.com/epriestley", 96 + "followers_url": "https://api.github.com/users/epriestley/followers", 97 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 98 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 99 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 100 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 101 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 102 + "repos_url": "https://api.github.com/users/epriestley/repos", 103 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 104 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 105 + "type": "User", 106 + "site_admin": false 107 + }, 108 + "private": false, 109 + "html_url": "https://github.com/epriestley/poems", 110 + "description": "Poems (Mirror)", 111 + "fork": false, 112 + "url": "https://api.github.com/repos/epriestley/poems", 113 + "forks_url": "https://api.github.com/repos/epriestley/poems/forks", 114 + "keys_url": "https://api.github.com/repos/epriestley/poems/keys{/key_id}", 115 + "collaborators_url": "https://api.github.com/repos/epriestley/poems/collaborators{/collaborator}", 116 + "teams_url": "https://api.github.com/repos/epriestley/poems/teams", 117 + "hooks_url": "https://api.github.com/repos/epriestley/poems/hooks", 118 + "issue_events_url": "https://api.github.com/repos/epriestley/poems/issues/events{/number}", 119 + "events_url": "https://api.github.com/repos/epriestley/poems/events", 120 + "assignees_url": "https://api.github.com/repos/epriestley/poems/assignees{/user}", 121 + "branches_url": "https://api.github.com/repos/epriestley/poems/branches{/branch}", 122 + "tags_url": "https://api.github.com/repos/epriestley/poems/tags", 123 + "blobs_url": "https://api.github.com/repos/epriestley/poems/git/blobs{/sha}", 124 + "git_tags_url": "https://api.github.com/repos/epriestley/poems/git/tags{/sha}", 125 + "git_refs_url": "https://api.github.com/repos/epriestley/poems/git/refs{/sha}", 126 + "trees_url": "https://api.github.com/repos/epriestley/poems/git/trees{/sha}", 127 + "statuses_url": "https://api.github.com/repos/epriestley/poems/statuses/{sha}", 128 + "languages_url": "https://api.github.com/repos/epriestley/poems/languages", 129 + "stargazers_url": "https://api.github.com/repos/epriestley/poems/stargazers", 130 + "contributors_url": "https://api.github.com/repos/epriestley/poems/contributors", 131 + "subscribers_url": "https://api.github.com/repos/epriestley/poems/subscribers", 132 + "subscription_url": "https://api.github.com/repos/epriestley/poems/subscription", 133 + "commits_url": "https://api.github.com/repos/epriestley/poems/commits{/sha}", 134 + "git_commits_url": "https://api.github.com/repos/epriestley/poems/git/commits{/sha}", 135 + "comments_url": "https://api.github.com/repos/epriestley/poems/comments{/number}", 136 + "issue_comment_url": "https://api.github.com/repos/epriestley/poems/issues/comments{/number}", 137 + "contents_url": "https://api.github.com/repos/epriestley/poems/contents/{+path}", 138 + "compare_url": "https://api.github.com/repos/epriestley/poems/compare/{base}...{head}", 139 + "merges_url": "https://api.github.com/repos/epriestley/poems/merges", 140 + "archive_url": "https://api.github.com/repos/epriestley/poems/{archive_format}{/ref}", 141 + "downloads_url": "https://api.github.com/repos/epriestley/poems/downloads", 142 + "issues_url": "https://api.github.com/repos/epriestley/poems/issues{/number}", 143 + "pulls_url": "https://api.github.com/repos/epriestley/poems/pulls{/number}", 144 + "milestones_url": "https://api.github.com/repos/epriestley/poems/milestones{/number}", 145 + "notifications_url": "https://api.github.com/repos/epriestley/poems/notifications{?since,all,participating}", 146 + "labels_url": "https://api.github.com/repos/epriestley/poems/labels{/name}", 147 + "releases_url": "https://api.github.com/repos/epriestley/poems/releases{/id}", 148 + "deployments_url": "https://api.github.com/repos/epriestley/poems/deployments", 149 + "created_at": "2013-11-22T19:47:42Z", 150 + "updated_at": "2016-01-21T17:10:27Z", 151 + "pushed_at": "2016-01-21T17:10:21Z", 152 + "git_url": "git://github.com/epriestley/poems.git", 153 + "ssh_url": "git@github.com:epriestley/poems.git", 154 + "clone_url": "https://github.com/epriestley/poems.git", 155 + "svn_url": "https://github.com/epriestley/poems", 156 + "homepage": null, 157 + "size": 715, 158 + "stargazers_count": 9, 159 + "watchers_count": 9, 160 + "language": "PHP", 161 + "has_issues": true, 162 + "has_downloads": true, 163 + "has_wiki": true, 164 + "has_pages": false, 165 + "forks_count": 0, 166 + "mirror_url": null, 167 + "open_issues_count": 2, 168 + "forks": 0, 169 + "open_issues": 2, 170 + "watchers": 9, 171 + "default_branch": "master" 172 + } 173 + }, 174 + "base": { 175 + "label": "epriestley:quack2", 176 + "ref": "quack2", 177 + "sha": "5a9c51e86615f6e1097b2a4a73ef0fe75981c1dd", 178 + "user": { 179 + "login": "epriestley", 180 + "id": 102631, 181 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 182 + "gravatar_id": "", 183 + "url": "https://api.github.com/users/epriestley", 184 + "html_url": "https://github.com/epriestley", 185 + "followers_url": "https://api.github.com/users/epriestley/followers", 186 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 187 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 188 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 189 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 190 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 191 + "repos_url": "https://api.github.com/users/epriestley/repos", 192 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 193 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 194 + "type": "User", 195 + "site_admin": false 196 + }, 197 + "repo": { 198 + "id": 14627834, 199 + "name": "poems", 200 + "full_name": "epriestley/poems", 201 + "owner": { 202 + "login": "epriestley", 203 + "id": 102631, 204 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?v=3", 205 + "gravatar_id": "", 206 + "url": "https://api.github.com/users/epriestley", 207 + "html_url": "https://github.com/epriestley", 208 + "followers_url": "https://api.github.com/users/epriestley/followers", 209 + "following_url": "https://api.github.com/users/epriestley/following{/other_user}", 210 + "gists_url": "https://api.github.com/users/epriestley/gists{/gist_id}", 211 + "starred_url": "https://api.github.com/users/epriestley/starred{/owner}{/repo}", 212 + "subscriptions_url": "https://api.github.com/users/epriestley/subscriptions", 213 + "organizations_url": "https://api.github.com/users/epriestley/orgs", 214 + "repos_url": "https://api.github.com/users/epriestley/repos", 215 + "events_url": "https://api.github.com/users/epriestley/events{/privacy}", 216 + "received_events_url": "https://api.github.com/users/epriestley/received_events", 217 + "type": "User", 218 + "site_admin": false 219 + }, 220 + "private": false, 221 + "html_url": "https://github.com/epriestley/poems", 222 + "description": "Poems (Mirror)", 223 + "fork": false, 224 + "url": "https://api.github.com/repos/epriestley/poems", 225 + "forks_url": "https://api.github.com/repos/epriestley/poems/forks", 226 + "keys_url": "https://api.github.com/repos/epriestley/poems/keys{/key_id}", 227 + "collaborators_url": "https://api.github.com/repos/epriestley/poems/collaborators{/collaborator}", 228 + "teams_url": "https://api.github.com/repos/epriestley/poems/teams", 229 + "hooks_url": "https://api.github.com/repos/epriestley/poems/hooks", 230 + "issue_events_url": "https://api.github.com/repos/epriestley/poems/issues/events{/number}", 231 + "events_url": "https://api.github.com/repos/epriestley/poems/events", 232 + "assignees_url": "https://api.github.com/repos/epriestley/poems/assignees{/user}", 233 + "branches_url": "https://api.github.com/repos/epriestley/poems/branches{/branch}", 234 + "tags_url": "https://api.github.com/repos/epriestley/poems/tags", 235 + "blobs_url": "https://api.github.com/repos/epriestley/poems/git/blobs{/sha}", 236 + "git_tags_url": "https://api.github.com/repos/epriestley/poems/git/tags{/sha}", 237 + "git_refs_url": "https://api.github.com/repos/epriestley/poems/git/refs{/sha}", 238 + "trees_url": "https://api.github.com/repos/epriestley/poems/git/trees{/sha}", 239 + "statuses_url": "https://api.github.com/repos/epriestley/poems/statuses/{sha}", 240 + "languages_url": "https://api.github.com/repos/epriestley/poems/languages", 241 + "stargazers_url": "https://api.github.com/repos/epriestley/poems/stargazers", 242 + "contributors_url": "https://api.github.com/repos/epriestley/poems/contributors", 243 + "subscribers_url": "https://api.github.com/repos/epriestley/poems/subscribers", 244 + "subscription_url": "https://api.github.com/repos/epriestley/poems/subscription", 245 + "commits_url": "https://api.github.com/repos/epriestley/poems/commits{/sha}", 246 + "git_commits_url": "https://api.github.com/repos/epriestley/poems/git/commits{/sha}", 247 + "comments_url": "https://api.github.com/repos/epriestley/poems/comments{/number}", 248 + "issue_comment_url": "https://api.github.com/repos/epriestley/poems/issues/comments{/number}", 249 + "contents_url": "https://api.github.com/repos/epriestley/poems/contents/{+path}", 250 + "compare_url": "https://api.github.com/repos/epriestley/poems/compare/{base}...{head}", 251 + "merges_url": "https://api.github.com/repos/epriestley/poems/merges", 252 + "archive_url": "https://api.github.com/repos/epriestley/poems/{archive_format}{/ref}", 253 + "downloads_url": "https://api.github.com/repos/epriestley/poems/downloads", 254 + "issues_url": "https://api.github.com/repos/epriestley/poems/issues{/number}", 255 + "pulls_url": "https://api.github.com/repos/epriestley/poems/pulls{/number}", 256 + "milestones_url": "https://api.github.com/repos/epriestley/poems/milestones{/number}", 257 + "notifications_url": "https://api.github.com/repos/epriestley/poems/notifications{?since,all,participating}", 258 + "labels_url": "https://api.github.com/repos/epriestley/poems/labels{/name}", 259 + "releases_url": "https://api.github.com/repos/epriestley/poems/releases{/id}", 260 + "deployments_url": "https://api.github.com/repos/epriestley/poems/deployments", 261 + "created_at": "2013-11-22T19:47:42Z", 262 + "updated_at": "2016-01-21T17:10:27Z", 263 + "pushed_at": "2016-01-21T17:10:21Z", 264 + "git_url": "git://github.com/epriestley/poems.git", 265 + "ssh_url": "git@github.com:epriestley/poems.git", 266 + "clone_url": "https://github.com/epriestley/poems.git", 267 + "svn_url": "https://github.com/epriestley/poems", 268 + "homepage": null, 269 + "size": 715, 270 + "stargazers_count": 9, 271 + "watchers_count": 9, 272 + "language": "PHP", 273 + "has_issues": true, 274 + "has_downloads": true, 275 + "has_wiki": true, 276 + "has_pages": false, 277 + "forks_count": 0, 278 + "mirror_url": null, 279 + "open_issues_count": 2, 280 + "forks": 0, 281 + "open_issues": 2, 282 + "watchers": 9, 283 + "default_branch": "master" 284 + } 285 + }, 286 + "_links": { 287 + "self": { 288 + "href": "https://api.github.com/repos/epriestley/poems/pulls/2" 289 + }, 290 + "html": { 291 + "href": "https://github.com/epriestley/poems/pull/2" 292 + }, 293 + "issue": { 294 + "href": "https://api.github.com/repos/epriestley/poems/issues/2" 295 + }, 296 + "comments": { 297 + "href": "https://api.github.com/repos/epriestley/poems/issues/2/comments" 298 + }, 299 + "review_comments": { 300 + "href": "https://api.github.com/repos/epriestley/poems/pulls/2/comments" 301 + }, 302 + "review_comment": { 303 + "href": "https://api.github.com/repos/epriestley/poems/pulls/comments{/number}" 304 + }, 305 + "commits": { 306 + "href": "https://api.github.com/repos/epriestley/poems/pulls/2/commits" 307 + }, 308 + "statuses": { 309 + "href": "https://api.github.com/repos/epriestley/poems/statuses/6cf5f6d0c8c06c4c73b8783666d9b3ecce138244" 310 + } 311 + }, 312 + "merged": false, 313 + "mergeable": null, 314 + "mergeable_state": "unknown", 315 + "merged_by": null, 316 + "comments": 0, 317 + "review_comments": 0, 318 + "commits": 26, 319 + "additions": 26, 320 + "deletions": 0, 321 + "changed_files": 1 322 + } 323 + }, 324 + "public": true, 325 + "created_at": "2016-03-09T12:52:31Z" 326 + } 327 + ~~~~~ 328 + { 329 + "repository.name.full": "epriestley/poems", 330 + "is.issue": false, 331 + "is.pull": true, 332 + "issue.number": null, 333 + "pull.number": 2 334 + }
+45
src/applications/nuance/github/__tests__/repositoryevents/PushEvent.txt
··· 1 + { 2 + "id": "3498724127", 3 + "type": "PushEvent", 4 + "actor": { 5 + "id": 102631, 6 + "login": "epriestley", 7 + "gravatar_id": "", 8 + "url": "https://api.github.com/users/epriestley", 9 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?" 10 + }, 11 + "repo": { 12 + "id": 14627834, 13 + "name": "epriestley/poems", 14 + "url": "https://api.github.com/repos/epriestley/poems" 15 + }, 16 + "payload": { 17 + "push_id": 924333172, 18 + "size": 1, 19 + "distinct_size": 1, 20 + "ref": "refs/heads/master", 21 + "head": "c829132d37c4c1da80d319942a5a1e500632b52f", 22 + "before": "d8262dc45f0bd79c06571c6851d47efaeb6b599b", 23 + "commits": [ 24 + { 25 + "sha": "c829132d37c4c1da80d319942a5a1e500632b52f", 26 + "author": { 27 + "email": "git@epriestley.com", 28 + "name": "epriestley" 29 + }, 30 + "message": "Put 16K files in a single directory", 31 + "distinct": true, 32 + "url": "https://api.github.com/repos/epriestley/poems/commits/c829132d37c4c1da80d319942a5a1e500632b52f" 33 + } 34 + ] 35 + }, 36 + "public": true, 37 + "created_at": "2016-01-06T11:21:59Z" 38 + } 39 + ~~~~~ 40 + { 41 + "repository.name.full": "epriestley/poems", 42 + "is.issue": false, 43 + "is.pull": false, 44 + "issue.number": null 45 + }
+29
src/applications/nuance/github/__tests__/repositoryevents/WatchEvent.started.txt
··· 1 + { 2 + "id": "3740950917", 3 + "type": "WatchEvent", 4 + "actor": { 5 + "id": 102631, 6 + "login": "epriestley", 7 + "gravatar_id": "", 8 + "url": "https://api.github.com/users/epriestley", 9 + "avatar_url": "https://avatars.githubusercontent.com/u/102631?" 10 + }, 11 + "repo": { 12 + "id": 14627834, 13 + "name": "epriestley/poems", 14 + "url": "https://api.github.com/repos/epriestley/poems" 15 + }, 16 + "payload": { 17 + "action": "started" 18 + }, 19 + "public": true, 20 + "created_at": "2016-03-09T12:56:28Z" 21 + } 22 + ~~~~~ 23 + { 24 + "repository.name.full": "epriestley/poems", 25 + "is.issue": false, 26 + "is.pull": false, 27 + "issue.number": null, 28 + "pull.number": null 29 + }