lita-github_pr_list 0.2.0 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dd78448cd040baecf3281fbc29eee9b1293e8438
|
4
|
+
data.tar.gz: 845c8780bf8a6016a268df094ba25942280b0555
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 098ea2078b2692d9c4a1825514a42871ac7e787750ea3a32886f3359a8fdb57950018fcd012f85c0cad18f51e62ddc3bb11cdd5c19a06babaf1162aaf0ba0d5e
|
7
|
+
data.tar.gz: 268dd782ba73ac9c135eea584f3ce2ac840fefa1bacee8560a9bb0ac4ccca0ca3568283efab1171ae38eeed909df6af43e4ad0bf1d1e6c1d145d97c45d4a1aa9
|
@@ -3,14 +3,14 @@ module Lita
|
|
3
3
|
class Status
|
4
4
|
attr_accessor :comment, :base, :dev, :design, :status
|
5
5
|
|
6
|
-
DESIGN_REVIEW_REGEX = /:art
|
7
|
-
DEV_REVIEW_REGEX = /:elephant
|
8
|
-
PASS_DEV_REGEX = /:elephant:\s?:elephant:\s?:elephant
|
9
|
-
PASS_DESIGN_REGEX = /:art:\s?:art:\s?:art
|
10
|
-
REVIEW_REGEX = /:book
|
11
|
-
FAIL_REGEX = /:poop:|:hankey
|
12
|
-
FIXED_REGEX = /:wave
|
13
|
-
NEW_REGEX = /:new
|
6
|
+
DESIGN_REVIEW_REGEX = /:art:|🎨 /
|
7
|
+
DEV_REVIEW_REGEX = /:elephant:|🐘 /
|
8
|
+
PASS_DEV_REGEX = /:elephant:\s?:elephant:\s?:elephant:|🐘 \s?🐘 \s?🐘 /
|
9
|
+
PASS_DESIGN_REGEX = /:art:\s?:art:\s?:art:|🎨 \s?🎨 \s?🎨 /
|
10
|
+
REVIEW_REGEX = /:book:|📖 /
|
11
|
+
FAIL_REGEX = /:poop:|:hankey:|💩 /
|
12
|
+
FIXED_REGEX = /:wave:|👋 /
|
13
|
+
NEW_REGEX = /:new:|🆕 /
|
14
14
|
|
15
15
|
DESIGN_REVIEW_REQUIRED = "(art)"
|
16
16
|
DEV_REVIEW_REQUIRED = "(elephant)"
|
@@ -0,0 +1,180 @@
|
|
1
|
+
{
|
2
|
+
"action": "created",
|
3
|
+
"issue": {
|
4
|
+
"url": "https://api.github.com/repos/baxterthehacker/public-repo/issues/47",
|
5
|
+
"labels_url": "https://api.github.com/repos/baxterthehacker/public-repo/issues/47/labels{/name}",
|
6
|
+
"comments_url": "https://api.github.com/repos/baxterthehacker/public-repo/issues/47/comments",
|
7
|
+
"events_url": "https://api.github.com/repos/baxterthehacker/public-repo/issues/47/events",
|
8
|
+
"html_url": "https://github.com/baxterthehacker/public-repo/issues/47",
|
9
|
+
"id": 36913817,
|
10
|
+
"number": 47,
|
11
|
+
"title": "Spelling error in the README file",
|
12
|
+
"user": {
|
13
|
+
"login": "mcwaffle1234",
|
14
|
+
"id": 6752317,
|
15
|
+
"avatar_url": "https://avatars.githubusercontent.com/u/6752317?",
|
16
|
+
"gravatar_id": "258ae60b5512c8402b93673b7478d9c6",
|
17
|
+
"url": "https://api.github.com/users/baxterthehacker",
|
18
|
+
"html_url": "https://github.com/baxterthehacker",
|
19
|
+
"followers_url": "https://api.github.com/users/baxterthehacker/followers",
|
20
|
+
"following_url": "https://api.github.com/users/baxterthehacker/following{/other_user}",
|
21
|
+
"gists_url": "https://api.github.com/users/baxterthehacker/gists{/gist_id}",
|
22
|
+
"starred_url": "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}",
|
23
|
+
"subscriptions_url": "https://api.github.com/users/baxterthehacker/subscriptions",
|
24
|
+
"organizations_url": "https://api.github.com/users/baxterthehacker/orgs",
|
25
|
+
"repos_url": "https://api.github.com/users/baxterthehacker/repos",
|
26
|
+
"events_url": "https://api.github.com/users/baxterthehacker/events{/privacy}",
|
27
|
+
"received_events_url": "https://api.github.com/users/baxterthehacker/received_events",
|
28
|
+
"type": "User",
|
29
|
+
"site_admin": false
|
30
|
+
},
|
31
|
+
"labels": [
|
32
|
+
{
|
33
|
+
"url": "https://api.github.com/repos/baxterthehacker/public-repo/labels/bug",
|
34
|
+
"name": "bug",
|
35
|
+
"color": "fc2929"
|
36
|
+
}
|
37
|
+
],
|
38
|
+
"state": "open",
|
39
|
+
"assignee": null,
|
40
|
+
"milestone": null,
|
41
|
+
"comments": 1,
|
42
|
+
"created_at": "2014-07-01T17:21:15Z",
|
43
|
+
"updated_at": "2014-07-01T17:21:15Z",
|
44
|
+
"closed_at": null,
|
45
|
+
"body": "It looks like you accidently spelled 'commit' with two 't's."
|
46
|
+
},
|
47
|
+
"comment": {
|
48
|
+
"url": "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments/47684681",
|
49
|
+
"html_url": "https://github.com/baxterthehacker/public-repo/issues/47#issuecomment-47684681",
|
50
|
+
"issue_url": "https://api.github.com/repos/baxterthehacker/public-repo/issues/47",
|
51
|
+
"id": 47684681,
|
52
|
+
"user": {
|
53
|
+
"login": "baxterthehacker",
|
54
|
+
"id": 6752317,
|
55
|
+
"avatar_url": "https://avatars.githubusercontent.com/u/6752317?",
|
56
|
+
"gravatar_id": "258ae60b5512c8402b93673b7478d9c6",
|
57
|
+
"url": "https://api.github.com/users/baxterthehacker",
|
58
|
+
"html_url": "https://github.com/baxterthehacker",
|
59
|
+
"followers_url": "https://api.github.com/users/baxterthehacker/followers",
|
60
|
+
"following_url": "https://api.github.com/users/baxterthehacker/following{/other_user}",
|
61
|
+
"gists_url": "https://api.github.com/users/baxterthehacker/gists{/gist_id}",
|
62
|
+
"starred_url": "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}",
|
63
|
+
"subscriptions_url": "https://api.github.com/users/baxterthehacker/subscriptions",
|
64
|
+
"organizations_url": "https://api.github.com/users/baxterthehacker/orgs",
|
65
|
+
"repos_url": "https://api.github.com/users/baxterthehacker/repos",
|
66
|
+
"events_url": "https://api.github.com/users/baxterthehacker/events{/privacy}",
|
67
|
+
"received_events_url": "https://api.github.com/users/baxterthehacker/received_events",
|
68
|
+
"type": "User",
|
69
|
+
"site_admin": false
|
70
|
+
},
|
71
|
+
"created_at": "2014-07-01T17:21:15Z",
|
72
|
+
"updated_at": "2014-07-01T17:21:15Z",
|
73
|
+
"body": "Passed 🐘 🐘 🐘 "
|
74
|
+
},
|
75
|
+
"repository": {
|
76
|
+
"id": 20000106,
|
77
|
+
"name": "public-repo",
|
78
|
+
"full_name": "baxterthehacker/public-repo",
|
79
|
+
"owner": {
|
80
|
+
"login": "baxterthehacker",
|
81
|
+
"id": 6752317,
|
82
|
+
"avatar_url": "https://avatars.githubusercontent.com/u/6752317?",
|
83
|
+
"gravatar_id": "258ae60b5512c8402b93673b7478d9c6",
|
84
|
+
"url": "https://api.github.com/users/baxterthehacker",
|
85
|
+
"html_url": "https://github.com/baxterthehacker",
|
86
|
+
"followers_url": "https://api.github.com/users/baxterthehacker/followers",
|
87
|
+
"following_url": "https://api.github.com/users/baxterthehacker/following{/other_user}",
|
88
|
+
"gists_url": "https://api.github.com/users/baxterthehacker/gists{/gist_id}",
|
89
|
+
"starred_url": "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}",
|
90
|
+
"subscriptions_url": "https://api.github.com/users/baxterthehacker/subscriptions",
|
91
|
+
"organizations_url": "https://api.github.com/users/baxterthehacker/orgs",
|
92
|
+
"repos_url": "https://api.github.com/users/baxterthehacker/repos",
|
93
|
+
"events_url": "https://api.github.com/users/baxterthehacker/events{/privacy}",
|
94
|
+
"received_events_url": "https://api.github.com/users/baxterthehacker/received_events",
|
95
|
+
"type": "User",
|
96
|
+
"site_admin": false
|
97
|
+
},
|
98
|
+
"private": false,
|
99
|
+
"html_url": "https://github.com/baxterthehacker/public-repo",
|
100
|
+
"description": "",
|
101
|
+
"fork": false,
|
102
|
+
"url": "https://api.github.com/repos/baxterthehacker/public-repo",
|
103
|
+
"forks_url": "https://api.github.com/repos/baxterthehacker/public-repo/forks",
|
104
|
+
"keys_url": "https://api.github.com/repos/baxterthehacker/public-repo/keys{/key_id}",
|
105
|
+
"collaborators_url": "https://api.github.com/repos/baxterthehacker/public-repo/collaborators{/collaborator}",
|
106
|
+
"teams_url": "https://api.github.com/repos/baxterthehacker/public-repo/teams",
|
107
|
+
"hooks_url": "https://api.github.com/repos/baxterthehacker/public-repo/hooks",
|
108
|
+
"issue_events_url": "https://api.github.com/repos/baxterthehacker/public-repo/issues/events{/number}",
|
109
|
+
"events_url": "https://api.github.com/repos/baxterthehacker/public-repo/events",
|
110
|
+
"assignees_url": "https://api.github.com/repos/baxterthehacker/public-repo/assignees{/user}",
|
111
|
+
"branches_url": "https://api.github.com/repos/baxterthehacker/public-repo/branches{/branch}",
|
112
|
+
"tags_url": "https://api.github.com/repos/baxterthehacker/public-repo/tags",
|
113
|
+
"blobs_url": "https://api.github.com/repos/baxterthehacker/public-repo/git/blobs{/sha}",
|
114
|
+
"git_tags_url": "https://api.github.com/repos/baxterthehacker/public-repo/git/tags{/sha}",
|
115
|
+
"git_refs_url": "https://api.github.com/repos/baxterthehacker/public-repo/git/refs{/sha}",
|
116
|
+
"trees_url": "https://api.github.com/repos/baxterthehacker/public-repo/git/trees{/sha}",
|
117
|
+
"statuses_url": "https://api.github.com/repos/baxterthehacker/public-repo/statuses/{sha}",
|
118
|
+
"languages_url": "https://api.github.com/repos/baxterthehacker/public-repo/languages",
|
119
|
+
"stargazers_url": "https://api.github.com/repos/baxterthehacker/public-repo/stargazers",
|
120
|
+
"contributors_url": "https://api.github.com/repos/baxterthehacker/public-repo/contributors",
|
121
|
+
"subscribers_url": "https://api.github.com/repos/baxterthehacker/public-repo/subscribers",
|
122
|
+
"subscription_url": "https://api.github.com/repos/baxterthehacker/public-repo/subscription",
|
123
|
+
"commits_url": "https://api.github.com/repos/baxterthehacker/public-repo/commits{/sha}",
|
124
|
+
"git_commits_url": "https://api.github.com/repos/baxterthehacker/public-repo/git/commits{/sha}",
|
125
|
+
"comments_url": "https://api.github.com/repos/baxterthehacker/public-repo/comments{/number}",
|
126
|
+
"issue_comment_url": "https://api.github.com/repos/baxterthehacker/public-repo/issues/comments/{number}",
|
127
|
+
"contents_url": "https://api.github.com/repos/baxterthehacker/public-repo/contents/{+path}",
|
128
|
+
"compare_url": "https://api.github.com/repos/baxterthehacker/public-repo/compare/{base}...{head}",
|
129
|
+
"merges_url": "https://api.github.com/repos/baxterthehacker/public-repo/merges",
|
130
|
+
"archive_url": "https://api.github.com/repos/baxterthehacker/public-repo/{archive_format}{/ref}",
|
131
|
+
"downloads_url": "https://api.github.com/repos/baxterthehacker/public-repo/downloads",
|
132
|
+
"issues_url": "https://api.github.com/repos/baxterthehacker/public-repo/issues{/number}",
|
133
|
+
"pulls_url": "https://api.github.com/repos/baxterthehacker/public-repo/pulls{/number}",
|
134
|
+
"milestones_url": "https://api.github.com/repos/baxterthehacker/public-repo/milestones{/number}",
|
135
|
+
"notifications_url": "https://api.github.com/repos/baxterthehacker/public-repo/notifications{?since,all,participating}",
|
136
|
+
"labels_url": "https://api.github.com/repos/baxterthehacker/public-repo/labels{/name}",
|
137
|
+
"releases_url": "https://api.github.com/repos/baxterthehacker/public-repo/releases{/id}",
|
138
|
+
"created_at": "2014-05-20T22:39:43Z",
|
139
|
+
"updated_at": "2014-07-01T17:17:43Z",
|
140
|
+
"pushed_at": "2014-07-01T17:21:15Z",
|
141
|
+
"git_url": "git://github.com/baxterthehacker/public-repo.git",
|
142
|
+
"ssh_url": "git@github.com:baxterthehacker/public-repo.git",
|
143
|
+
"clone_url": "https://github.com/baxterthehacker/public-repo.git",
|
144
|
+
"svn_url": "https://github.com/baxterthehacker/public-repo",
|
145
|
+
"homepage": null,
|
146
|
+
"size": 569,
|
147
|
+
"stargazers_count": 0,
|
148
|
+
"watchers_count": 0,
|
149
|
+
"language": null,
|
150
|
+
"has_issues": true,
|
151
|
+
"has_downloads": true,
|
152
|
+
"has_wiki": true,
|
153
|
+
"forks_count": 0,
|
154
|
+
"mirror_url": null,
|
155
|
+
"open_issues_count": 24,
|
156
|
+
"forks": 0,
|
157
|
+
"open_issues": 24,
|
158
|
+
"watchers": 0,
|
159
|
+
"default_branch": "master"
|
160
|
+
},
|
161
|
+
"sender": {
|
162
|
+
"login": "baxterthehacker",
|
163
|
+
"id": 6752317,
|
164
|
+
"avatar_url": "https://avatars.githubusercontent.com/u/6752317?",
|
165
|
+
"gravatar_id": "258ae60b5512c8402b93673b7478d9c6",
|
166
|
+
"url": "https://api.github.com/users/baxterthehacker",
|
167
|
+
"html_url": "https://github.com/baxterthehacker",
|
168
|
+
"followers_url": "https://api.github.com/users/baxterthehacker/followers",
|
169
|
+
"following_url": "https://api.github.com/users/baxterthehacker/following{/other_user}",
|
170
|
+
"gists_url": "https://api.github.com/users/baxterthehacker/gists{/gist_id}",
|
171
|
+
"starred_url": "https://api.github.com/users/baxterthehacker/starred{/owner}{/repo}",
|
172
|
+
"subscriptions_url": "https://api.github.com/users/baxterthehacker/subscriptions",
|
173
|
+
"organizations_url": "https://api.github.com/users/baxterthehacker/orgs",
|
174
|
+
"repos_url": "https://api.github.com/users/baxterthehacker/repos",
|
175
|
+
"events_url": "https://api.github.com/users/baxterthehacker/events{/privacy}",
|
176
|
+
"received_events_url": "https://api.github.com/users/baxterthehacker/received_events",
|
177
|
+
"type": "User",
|
178
|
+
"site_admin": false
|
179
|
+
}
|
180
|
+
}
|
@@ -31,6 +31,7 @@ describe Lita::Handlers::GithubPrList, lita_handler: true do
|
|
31
31
|
end
|
32
32
|
|
33
33
|
let(:issue_comment_event_passed) { File.read("spec/fixtures/issue_comment_event_passed.json") }
|
34
|
+
let(:issue_comment_event_passed_emoji) { File.read("spec/fixtures/issue_comment_event_passed_emoji.json") }
|
34
35
|
let(:issue_comment_event_passed_design) { File.read("spec/fixtures/issue_comment_event_passed_design.json") }
|
35
36
|
let(:issue_comment_event_failed) { File.read("spec/fixtures/issue_comment_event_failed.json") }
|
36
37
|
let(:issue_comment_event_failed_hankey) { File.read("spec/fixtures/issue_comment_event_failed_hankey.json") }
|
@@ -48,18 +49,36 @@ describe Lita::Handlers::GithubPrList, lita_handler: true do
|
|
48
49
|
|
49
50
|
it { is_expected.to route_http(:post, "/comment_hook").to(:comment_hook) }
|
50
51
|
|
51
|
-
|
52
|
-
|
52
|
+
context "comment made with text" do
|
53
|
+
it "mentions the github user in the room and tell them they passed , but they need design review" do
|
54
|
+
expect_any_instance_of(Octokit::Client).to receive(:issue_comments).and_return(issue_comments_passed)
|
53
55
|
|
54
|
-
|
55
|
-
|
56
|
+
request = Rack::Request.new("rack.input" => StringIO.new(issue_comment_event_passed))
|
57
|
+
response = Rack::Response.new(['Hello'], 200, { 'Content-Type' => 'text/plain' })
|
56
58
|
|
57
|
-
|
58
|
-
|
59
|
+
github_handler = Lita::Handlers::GithubPrList.new robot
|
60
|
+
github_handler.comment_hook(request, response)
|
59
61
|
|
60
|
-
|
61
|
-
|
62
|
-
|
62
|
+
expect(replies.last).to include("@mcwaffle1234 your pull request: Spelling error in the README file has passed DEV REVIEW."\
|
63
|
+
" https://github.com/baxterthehacker/public-repo/issues/47"\
|
64
|
+
" - You still require DESIGN REVIEW")
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
context "comment made with emojis" do
|
69
|
+
it "mentions the github user in the room and tell them they passed , but they need design review" do
|
70
|
+
expect_any_instance_of(Octokit::Client).to receive(:issue_comments).and_return(issue_comments_passed)
|
71
|
+
|
72
|
+
request = Rack::Request.new("rack.input" => StringIO.new(issue_comment_event_passed_emoji))
|
73
|
+
response = Rack::Response.new(['Hello'], 200, { 'Content-Type' => 'text/plain' })
|
74
|
+
|
75
|
+
github_handler = Lita::Handlers::GithubPrList.new robot
|
76
|
+
github_handler.comment_hook(request, response)
|
77
|
+
|
78
|
+
expect(replies.last).to include("@mcwaffle1234 your pull request: Spelling error in the README file has passed DEV REVIEW."\
|
79
|
+
" https://github.com/baxterthehacker/public-repo/issues/47"\
|
80
|
+
" - You still require DESIGN REVIEW")
|
81
|
+
end
|
63
82
|
end
|
64
83
|
|
65
84
|
it "mentions the github user in the room and tell them they passed DESIGN" do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lita-github_pr_list
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael van den Beuken
|
@@ -15,7 +15,7 @@ authors:
|
|
15
15
|
autorequire:
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
|
-
date: 2016-04-
|
18
|
+
date: 2016-04-18 00:00:00.000000000 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: lita
|
@@ -185,6 +185,7 @@ files:
|
|
185
185
|
- spec/fixtures/issue_comment_event_no_event.json
|
186
186
|
- spec/fixtures/issue_comment_event_passed.json
|
187
187
|
- spec/fixtures/issue_comment_event_passed_design.json
|
188
|
+
- spec/fixtures/issue_comment_event_passed_emoji.json
|
188
189
|
- spec/fixtures/issue_comments_failed.json
|
189
190
|
- spec/fixtures/issue_comments_fixed.json
|
190
191
|
- spec/fixtures/issue_comments_in_review.json
|
@@ -229,7 +230,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
229
230
|
version: '0'
|
230
231
|
requirements: []
|
231
232
|
rubyforge_project:
|
232
|
-
rubygems_version: 2.
|
233
|
+
rubygems_version: 2.6.3
|
233
234
|
signing_key:
|
234
235
|
specification_version: 4
|
235
236
|
summary: List open pull requests for an organization.
|
@@ -251,6 +252,7 @@ test_files:
|
|
251
252
|
- spec/fixtures/issue_comment_event_no_event.json
|
252
253
|
- spec/fixtures/issue_comment_event_passed.json
|
253
254
|
- spec/fixtures/issue_comment_event_passed_design.json
|
255
|
+
- spec/fixtures/issue_comment_event_passed_emoji.json
|
254
256
|
- spec/fixtures/issue_comments_failed.json
|
255
257
|
- spec/fixtures/issue_comments_fixed.json
|
256
258
|
- spec/fixtures/issue_comments_in_review.json
|