github_api 0.9.0 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +50 -5
- data/features/cassettes/git_data/commits/get.yml +69 -0
- data/features/git_data/commmits.feature +14 -0
- data/lib/github_api.rb +1 -0
- data/lib/github_api/activity/events.rb +42 -33
- data/lib/github_api/activity/notifications.rb +22 -22
- data/lib/github_api/activity/starring.rb +16 -21
- data/lib/github_api/activity/watching.rb +16 -19
- data/lib/github_api/api.rb +51 -8
- data/lib/github_api/arguments.rb +155 -0
- data/lib/github_api/authorizations.rb +19 -20
- data/lib/github_api/configuration.rb +5 -0
- data/lib/github_api/emojis.rb +3 -3
- data/lib/github_api/error/validations.rb +2 -2
- data/lib/github_api/gists.rb +32 -42
- data/lib/github_api/gists/comments.rb +21 -23
- data/lib/github_api/git_data/blobs.rb +13 -16
- data/lib/github_api/git_data/commits.rb +12 -10
- data/lib/github_api/git_data/references.rb +24 -28
- data/lib/github_api/git_data/tags.rb +9 -11
- data/lib/github_api/git_data/trees.rb +10 -13
- data/lib/github_api/gitignore.rb +4 -6
- data/lib/github_api/issues.rb +24 -32
- data/lib/github_api/issues/assignees.rb +11 -8
- data/lib/github_api/issues/comments.rb +21 -26
- data/lib/github_api/issues/events.rb +7 -9
- data/lib/github_api/issues/labels.rb +39 -53
- data/lib/github_api/issues/milestones.rb +26 -33
- data/lib/github_api/markdown.rb +5 -6
- data/lib/github_api/meta.rb +3 -3
- data/lib/github_api/orgs.rb +10 -11
- data/lib/github_api/orgs/members.rb +18 -20
- data/lib/github_api/orgs/teams.rb +54 -58
- data/lib/github_api/pull_requests.rb +40 -54
- data/lib/github_api/pull_requests/comments.rb +19 -26
- data/lib/github_api/repos.rb +146 -101
- data/lib/github_api/repos/collaborators.rb +29 -30
- data/lib/github_api/repos/comments.rb +20 -25
- data/lib/github_api/repos/commits.rb +12 -14
- data/lib/github_api/repos/contents.rb +22 -14
- data/lib/github_api/repos/downloads.rb +19 -23
- data/lib/github_api/repos/forks.rb +6 -11
- data/lib/github_api/repos/hooks.rb +25 -34
- data/lib/github_api/repos/keys.rb +25 -27
- data/lib/github_api/repos/merging.rb +7 -6
- data/lib/github_api/repos/pub_sub_hubbub.rb +14 -18
- data/lib/github_api/repos/statuses.rb +13 -14
- data/lib/github_api/say.rb +1 -3
- data/lib/github_api/search.rb +12 -21
- data/lib/github_api/users.rb +10 -9
- data/lib/github_api/users/emails.rb +11 -9
- data/lib/github_api/users/followers.rb +25 -23
- data/lib/github_api/users/keys.rb +27 -29
- data/lib/github_api/version.rb +1 -1
- data/spec/github/activity/events/org_spec.rb +6 -6
- data/spec/github/activity/events/performed_spec.rb +1 -1
- data/spec/github/activity/events/received_spec.rb +1 -1
- data/spec/github/activity/events/user_org_spec.rb +4 -2
- data/spec/github/activity/notifications/create_spec.rb +1 -1
- data/spec/github/activity/notifications/delete_spec.rb +1 -1
- data/spec/github/activity/notifications/get_spec.rb +1 -1
- data/spec/github/activity/notifications/subscribed_spec.rb +1 -1
- data/spec/github/activity/starring/list_spec.rb +2 -0
- data/spec/github/activity/starring/starring_spec.rb +1 -1
- data/spec/github/activity/watching/list_spec.rb +2 -0
- data/spec/github/activity/watching/watching_spec.rb +1 -3
- data/spec/github/api/set_spec.rb +18 -4
- data/spec/github/api/with_spec.rb +28 -0
- data/spec/github/api_spec.rb +11 -33
- data/spec/github/arguments/parse_spec.rb +68 -0
- data/spec/github/authorizations/delete_spec.rb +1 -1
- data/spec/github/authorizations/get_spec.rb +1 -1
- data/spec/github/error/validations_spec.rb +3 -3
- data/spec/github/gists/comments/list_spec.rb +1 -1
- data/spec/github/gists/delete_spec.rb +1 -1
- data/spec/github/gists/fork_spec.rb +1 -1
- data/spec/github/gists/get_spec.rb +1 -1
- data/spec/github/gists/is_starred_spec.rb +2 -0
- data/spec/github/gists/star_spec.rb +1 -1
- data/spec/github/gists/unstar_spec.rb +1 -1
- data/spec/github/git_data/blobs/create_spec.rb +2 -0
- data/spec/github/git_data/blobs/get_spec.rb +1 -1
- data/spec/github/git_data/commits/create_spec.rb +2 -0
- data/spec/github/git_data/commits/get_spec.rb +3 -3
- data/spec/github/git_data/references/create_spec.rb +1 -1
- data/spec/github/git_data/references/delete_spec.rb +3 -1
- data/spec/github/git_data/tags/create_spec.rb +2 -0
- data/spec/github/gitignore/get_spec.rb +1 -1
- data/spec/github/issues/events/get_spec.rb +3 -1
- data/spec/github/issues/events/list_spec.rb +3 -1
- data/spec/github/issues/labels/add_spec.rb +6 -6
- data/spec/github/issues/labels/list_spec.rb +3 -1
- data/spec/github/issues/labels/replace_spec.rb +6 -7
- data/spec/github/issues/milestones/get_spec.rb +2 -0
- data/spec/github/normalizer_spec.rb +18 -6
- data/spec/github/orgs/members/conceal_spec.rb +6 -4
- data/spec/github/orgs/members/delete_spec.rb +2 -0
- data/spec/github/orgs/members/list_spec.rb +1 -1
- data/spec/github/orgs/members/member_spec.rb +3 -1
- data/spec/github/orgs/members/publicize_spec.rb +2 -0
- data/spec/github/orgs/teams/add_member_spec.rb +2 -0
- data/spec/github/orgs/teams/create_spec.rb +1 -1
- data/spec/github/orgs/teams/delete_spec.rb +1 -1
- data/spec/github/orgs/teams/edit_spec.rb +1 -1
- data/spec/github/orgs/teams/get_spec.rb +1 -1
- data/spec/github/orgs/teams/list_spec.rb +1 -1
- data/spec/github/orgs/teams/team_member_spec.rb +3 -1
- data/spec/github/parameter_filter_spec.rb +19 -58
- data/spec/github/pull_requests/comments/create_spec.rb +3 -1
- data/spec/github/pull_requests/comments/delete_spec.rb +1 -1
- data/spec/github/pull_requests/comments/edit_spec.rb +2 -0
- data/spec/github/pull_requests/comments/get_spec.rb +3 -1
- data/spec/github/pull_requests/comments/list_spec.rb +3 -1
- data/spec/github/pull_requests/commits_spec.rb +3 -3
- data/spec/github/pull_requests/create_spec.rb +4 -0
- data/spec/github/pull_requests/files_spec.rb +4 -0
- data/spec/github/pull_requests/get_spec.rb +3 -3
- data/spec/github/pull_requests/list_spec.rb +3 -3
- data/spec/github/pull_requests/merge_spec.rb +2 -0
- data/spec/github/pull_requests/merged_spec.rb +3 -1
- data/spec/github/pull_requests/update_spec.rb +4 -0
- data/spec/github/repos/collaborators/add_spec.rb +3 -1
- data/spec/github/repos/collaborators/get_spec.rb +1 -3
- data/spec/github/repos/collaborators/list_spec.rb +5 -1
- data/spec/github/repos/collaborators/remove_spec.rb +3 -1
- data/spec/github/repos/comments/create_spec.rb +4 -0
- data/spec/github/repos/comments/delete_spec.rb +2 -2
- data/spec/github/repos/comments/get_spec.rb +6 -2
- data/spec/github/repos/commits/compare_spec.rb +3 -3
- data/spec/github/repos/commits/get_spec.rb +3 -3
- data/spec/github/repos/commits/list_spec.rb +3 -3
- data/spec/github/repos/contents/archive_spec.rb +12 -0
- data/spec/github/repos/contents/get_spec.rb +5 -0
- data/spec/github/repos/contributors_spec.rb +7 -2
- data/spec/github/repos/downloads/create_spec.rb +4 -0
- data/spec/github/repos/downloads/delete_spec.rb +5 -1
- data/spec/github/repos/downloads/get_spec.rb +3 -1
- data/spec/github/repos/downloads/list_spec.rb +3 -1
- data/spec/github/repos/forks/create_spec.rb +2 -0
- data/spec/github/repos/forks/list_spec.rb +3 -1
- data/spec/github/repos/hooks/edit_spec.rb +1 -1
- data/spec/github/repos/keys/delete_spec.rb +1 -1
- data/spec/github/repos/keys/edit_spec.rb +2 -0
- data/spec/github/repos/keys/get_spec.rb +3 -1
- data/spec/github/repos/keys/list_spec.rb +4 -2
- data/spec/github/repos/list_spec.rb +6 -1
- data/spec/github/repos/pub_sub_hubbub/subscribe_service_spec.rb +27 -0
- data/spec/github/repos/pub_sub_hubbub/subscribe_spec.rb +51 -0
- data/spec/github/repos/pub_sub_hubbub/unsubscribe_service_spec.rb +21 -0
- data/spec/github/repos/pub_sub_hubbub/unsubscribe_spec.rb +58 -0
- data/spec/github/repos/statuses/create_spec.rb +2 -0
- data/spec/github/search_spec.rb +25 -10
- data/spec/github/users/followers/follow_spec.rb +1 -1
- data/spec/github/users/followers/is_following_spec.rb +1 -1
- data/spec/github/users/followers/unfollow_spec.rb +1 -1
- data/spec/github/users/keys/delete_spec.rb +1 -1
- data/spec/github/users/keys/get_spec.rb +1 -1
- data/spec/github/users/keys/update_spec.rb +1 -1
- data/spec/github/users/update_spec.rb +1 -1
- data/spec/integration/arguments_spec.rb +76 -0
- data/spec/{github → integration}/authorizations_spec.rb +0 -0
- metadata +44 -35
- data/spec/github/repos/pub_sub_hubbub_spec.rb +0 -78
|
@@ -34,10 +34,9 @@ module Github
|
|
|
34
34
|
# github = Github.new
|
|
35
35
|
# github.git_data.trees.get 'user-name', 'repo-name', 'sha', 'recursive' => true
|
|
36
36
|
#
|
|
37
|
-
def get(
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
normalize! params
|
|
37
|
+
def get(*args)
|
|
38
|
+
arguments(args, :required => [:user, :repo, :sha])
|
|
39
|
+
params = arguments.params
|
|
41
40
|
|
|
42
41
|
response = if params['recursive']
|
|
43
42
|
params['recursive'] = 1
|
|
@@ -79,16 +78,14 @@ module Github
|
|
|
79
78
|
# ...
|
|
80
79
|
# ]
|
|
81
80
|
#
|
|
82
|
-
def create(
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
filter! VALID_TREE_PARAM_NAMES, params['tree']
|
|
89
|
-
assert_valid_values(VALID_TREE_PARAM_VALUES, params['tree'])
|
|
81
|
+
def create(*args)
|
|
82
|
+
arguments(args, :required => [:user, :repo]) do
|
|
83
|
+
assert_required %w[ tree ]
|
|
84
|
+
sift VALID_TREE_PARAM_NAMES, 'tree'
|
|
85
|
+
assert_values VALID_TREE_PARAM_VALUES, 'tree'
|
|
86
|
+
end
|
|
90
87
|
|
|
91
|
-
post_request("/repos/#{user}/#{repo}/git/trees", params)
|
|
88
|
+
post_request("/repos/#{user}/#{repo}/git/trees", arguments.params)
|
|
92
89
|
end
|
|
93
90
|
|
|
94
91
|
end # GitData::Trees
|
data/lib/github_api/gitignore.rb
CHANGED
|
@@ -14,10 +14,9 @@ module Github
|
|
|
14
14
|
# github.gitignore.list { |template| ... }
|
|
15
15
|
#
|
|
16
16
|
def list(*args)
|
|
17
|
-
|
|
18
|
-
normalize! params
|
|
17
|
+
arguments(args)
|
|
19
18
|
|
|
20
|
-
response = get_request("/gitignore/templates", params)
|
|
19
|
+
response = get_request("/gitignore/templates", arguments.params)
|
|
21
20
|
return response unless block_given?
|
|
22
21
|
response.each { |el| yield el }
|
|
23
22
|
end
|
|
@@ -35,9 +34,8 @@ module Github
|
|
|
35
34
|
# github = Github.new
|
|
36
35
|
# github.gitignore.get "template-name", mime: 'applicatin/vnd.github.raw'
|
|
37
36
|
#
|
|
38
|
-
def get(
|
|
39
|
-
|
|
40
|
-
assert_presence_of name
|
|
37
|
+
def get(*args)
|
|
38
|
+
params = arguments(args, :required => [:name]).params
|
|
41
39
|
|
|
42
40
|
if (mime_type = params.delete('mime'))
|
|
43
41
|
options = { :raw => true, :headers => {'Accept' => mime_type} }
|
data/lib/github_api/issues.rb
CHANGED
|
@@ -134,8 +134,9 @@ module Github
|
|
|
134
134
|
# :direction => 'asc'
|
|
135
135
|
#
|
|
136
136
|
def list(*args)
|
|
137
|
-
params = args
|
|
138
|
-
|
|
137
|
+
params = arguments(args) do
|
|
138
|
+
assert_values VALID_ISSUE_PARAM_VALUES
|
|
139
|
+
end.params
|
|
139
140
|
# filter! VALID_ISSUE_PARAM_NAMES, params
|
|
140
141
|
# _merge_mime_type(:issue, params)
|
|
141
142
|
# assert_valid_values(VALID_ISSUE_PARAM_VALUES, params)
|
|
@@ -159,14 +160,14 @@ module Github
|
|
|
159
160
|
|
|
160
161
|
# List issues for a repository
|
|
161
162
|
#
|
|
162
|
-
def list_repo(user_name, repo_name, params)
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
163
|
+
# def list_repo(user_name, repo_name, params)
|
|
164
|
+
def list_repo(*args)
|
|
165
|
+
arguments(args, :required => [:user, :repo]) do
|
|
166
|
+
sift VALID_ISSUE_PARAM_NAMES
|
|
167
|
+
assert_values VALID_ISSUE_PARAM_VALUES
|
|
168
|
+
end
|
|
168
169
|
|
|
169
|
-
get_request("/repos/#{user}/#{repo}/issues", params)
|
|
170
|
+
get_request("/repos/#{user}/#{repo}/issues", arguments.params)
|
|
170
171
|
end
|
|
171
172
|
private :list_repo
|
|
172
173
|
|
|
@@ -176,14 +177,10 @@ module Github
|
|
|
176
177
|
# github = Github.new
|
|
177
178
|
# github.issues.get 'user-name', 'repo-name', 'issue-id'
|
|
178
179
|
#
|
|
179
|
-
def get(
|
|
180
|
-
|
|
181
|
-
assert_presence_of user, repo, issue_id
|
|
180
|
+
def get(*args)
|
|
181
|
+
arguments(args, :required => [:user, :repo, :issue_id])
|
|
182
182
|
|
|
183
|
-
|
|
184
|
-
# _merge_mime_type(:issue, params)
|
|
185
|
-
|
|
186
|
-
get_request("/repos/#{user}/#{repo}/issues/#{issue_id}", params)
|
|
183
|
+
get_request("/repos/#{user}/#{repo}/issues/#{issue_id}", arguments.params)
|
|
187
184
|
end
|
|
188
185
|
alias :find :get
|
|
189
186
|
|
|
@@ -207,16 +204,13 @@ module Github
|
|
|
207
204
|
# "Label2"
|
|
208
205
|
# ]
|
|
209
206
|
#
|
|
210
|
-
def create(
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
# _merge_mime_type(:issue, params)
|
|
216
|
-
filter! VALID_ISSUE_PARAM_NAMES, params
|
|
217
|
-
assert_required_keys(%w[ title ], params)
|
|
207
|
+
def create(*args)
|
|
208
|
+
arguments(args, :required => [:user, :repo]) do
|
|
209
|
+
sift VALID_ISSUE_PARAM_NAMES
|
|
210
|
+
assert_required %w[ title ]
|
|
211
|
+
end
|
|
218
212
|
|
|
219
|
-
post_request("/repos/#{user}/#{repo}/issues", params)
|
|
213
|
+
post_request("/repos/#{user}/#{repo}/issues", arguments.params)
|
|
220
214
|
end
|
|
221
215
|
|
|
222
216
|
# Edit an issue
|
|
@@ -241,13 +235,11 @@ module Github
|
|
|
241
235
|
# "Label2"
|
|
242
236
|
# ]
|
|
243
237
|
#
|
|
244
|
-
def edit(
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
# _merge_mime_type(:issue, params)
|
|
250
|
-
filter! VALID_ISSUE_PARAM_NAMES, params
|
|
238
|
+
def edit(*args)
|
|
239
|
+
arguments(args, :required => [:user, :repo, :issue_id]) do
|
|
240
|
+
sift VALID_ISSUE_PARAM_NAMES
|
|
241
|
+
end
|
|
242
|
+
params = arguments.params
|
|
251
243
|
|
|
252
244
|
patch_request("/repos/#{user}/#{repo}/issues/#{issue_id}", params)
|
|
253
245
|
end
|
|
@@ -11,11 +11,11 @@ module Github
|
|
|
11
11
|
# Github.issues.assignees.list 'user', 'repo'
|
|
12
12
|
# Github.issues.assignees.list 'user', 'repo' { |assignee| ... }
|
|
13
13
|
#
|
|
14
|
-
def list(
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
def list(*args)
|
|
15
|
+
arguments(args, :required => [:user, :repo])
|
|
16
|
+
params = arguments.params
|
|
17
17
|
|
|
18
|
-
response = get_request("/repos/#{
|
|
18
|
+
response = get_request("/repos/#{user}/#{repo}/assignees", params)
|
|
19
19
|
return response unless block_given?
|
|
20
20
|
response.each { |el| yield el }
|
|
21
21
|
end
|
|
@@ -27,11 +27,14 @@ module Github
|
|
|
27
27
|
#
|
|
28
28
|
# Github.issues.assignees.check 'user', 'repo', 'assignee'
|
|
29
29
|
#
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
# github = Github.new user: 'user-name', repo: 'repo-name'
|
|
31
|
+
# github.issues.assignees.check 'assignee'
|
|
32
|
+
#
|
|
33
|
+
def check(*args)
|
|
34
|
+
arguments(args, :required => [:user, :repo, :assignee])
|
|
35
|
+
params = arguments.params
|
|
33
36
|
|
|
34
|
-
get_request("/repos/#{
|
|
37
|
+
get_request("/repos/#{user}/#{repo}/assignees/#{assignee}",params)
|
|
35
38
|
true
|
|
36
39
|
rescue Github::Error::NotFound
|
|
37
40
|
false
|
|
@@ -30,10 +30,9 @@ module Github
|
|
|
30
30
|
# github.issues.comments.all 'user-name', 'repo-name'
|
|
31
31
|
# github.issues.comments.all 'user-name', 'repo-name' {|com| .. }
|
|
32
32
|
#
|
|
33
|
-
def list(
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
normalize! params
|
|
33
|
+
def list(*args)
|
|
34
|
+
arguments(args, :required => [:user, :repo])
|
|
35
|
+
params = arguments.params
|
|
37
36
|
|
|
38
37
|
response = if (issue_id = params.delete('issue_id'))
|
|
39
38
|
get_request("/repos/#{user}/#{repo}/issues/#{issue_id}/comments", params)
|
|
@@ -51,10 +50,9 @@ module Github
|
|
|
51
50
|
# github = Github.new
|
|
52
51
|
# github.issues.comments.find 'user-name', 'repo-name', 'comment-id'
|
|
53
52
|
#
|
|
54
|
-
def get(
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
normalize! params
|
|
53
|
+
def get(*args)
|
|
54
|
+
arguments(args, :required => [:user, :repo, :comment_id])
|
|
55
|
+
params = arguments.params
|
|
58
56
|
|
|
59
57
|
get_request("/repos/#{user}/#{repo}/issues/comments/#{comment_id}", params)
|
|
60
58
|
end
|
|
@@ -70,13 +68,12 @@ module Github
|
|
|
70
68
|
# github.issues.comments.create 'user-name', 'repo-name', 'issue-id',
|
|
71
69
|
# 'body': 'a new comment'
|
|
72
70
|
#
|
|
73
|
-
def create(
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
assert_required_keys(%w[ body ], params)
|
|
71
|
+
def create(*args)
|
|
72
|
+
arguments(args, :required => [:user, :repo, :issue_id]) do
|
|
73
|
+
sift VALID_ISSUE_COMMENT_PARAM_NAME
|
|
74
|
+
assert_required %w[ body ]
|
|
75
|
+
end
|
|
76
|
+
params = arguments.params
|
|
80
77
|
|
|
81
78
|
post_request("/repos/#{user}/#{repo}/issues/#{issue_id}/comments", params)
|
|
82
79
|
end
|
|
@@ -91,13 +88,12 @@ module Github
|
|
|
91
88
|
# github.issues.comments.edit 'user-name', 'repo-name', 'comment-id',
|
|
92
89
|
# 'body': 'a new comment'
|
|
93
90
|
#
|
|
94
|
-
def edit(
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
assert_required_keys(%w[ body ], params)
|
|
91
|
+
def edit(*args)
|
|
92
|
+
arguments(args, :required => [:user, :repo, :comment_id]) do
|
|
93
|
+
sift VALID_ISSUE_COMMENT_PARAM_NAME
|
|
94
|
+
assert_required %w[ body ]
|
|
95
|
+
end
|
|
96
|
+
params = arguments.params
|
|
101
97
|
|
|
102
98
|
patch_request("/repos/#{user}/#{repo}/issues/comments/#{comment_id}", params)
|
|
103
99
|
end
|
|
@@ -108,10 +104,9 @@ module Github
|
|
|
108
104
|
# github = Github.new
|
|
109
105
|
# github.issues.comments.delete 'user-name', 'repo-name', 'comment-id'
|
|
110
106
|
#
|
|
111
|
-
def delete(
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
normalize! params
|
|
107
|
+
def delete(*args)
|
|
108
|
+
arguments(args, :required => [:user, :repo, :comment_id])
|
|
109
|
+
params = arguments.params
|
|
115
110
|
|
|
116
111
|
delete_request("/repos/#{user}/#{repo}/issues/comments/#{comment_id}", params)
|
|
117
112
|
end
|
|
@@ -15,10 +15,9 @@ module Github
|
|
|
15
15
|
# github = Github.new
|
|
16
16
|
# github.issues.events.list 'user-name', 'repo-name'
|
|
17
17
|
#
|
|
18
|
-
def list(
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
normalize! params
|
|
18
|
+
def list(*args)
|
|
19
|
+
arguments(args, :required => [:user, :repo])
|
|
20
|
+
params = arguments.params
|
|
22
21
|
|
|
23
22
|
response = if (issue_id = params.delete('issue_id'))
|
|
24
23
|
get_request("/repos/#{user}/#{repo}/issues/#{issue_id}/events", params)
|
|
@@ -36,12 +35,11 @@ module Github
|
|
|
36
35
|
# github = Github.new
|
|
37
36
|
# github.issues.events.get 'user-name', 'repo-name', 'event-id'
|
|
38
37
|
#
|
|
39
|
-
def get(
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
normalize! params
|
|
38
|
+
def get(*args)
|
|
39
|
+
arguments(args, :required => [:user, :repo, :event_id])
|
|
40
|
+
params = arguments.params
|
|
43
41
|
|
|
44
|
-
get_request("/repos/#{user}/#{repo}/issues/events/#{event_id}")
|
|
42
|
+
get_request("/repos/#{user}/#{repo}/issues/events/#{event_id}", params)
|
|
45
43
|
end
|
|
46
44
|
alias :find :get
|
|
47
45
|
|
|
@@ -21,13 +21,12 @@ module Github
|
|
|
21
21
|
# List labels on an issue
|
|
22
22
|
#
|
|
23
23
|
# = Examples
|
|
24
|
-
#
|
|
25
|
-
#
|
|
24
|
+
# github = Github.new
|
|
25
|
+
# github.issues.labels.list 'user-name', 'repo-name', issue_id: 'issue-id'
|
|
26
26
|
#
|
|
27
|
-
def list(
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
normalize! params
|
|
27
|
+
def list(*args)
|
|
28
|
+
arguments(args, :required => [:user, :repo])
|
|
29
|
+
params = arguments.params
|
|
31
30
|
|
|
32
31
|
response = if (milestone_id = params.delete('milestone_id'))
|
|
33
32
|
get_request("/repos/#{user}/#{repo}/milestones/#{milestone_id}/labels", params)
|
|
@@ -47,10 +46,12 @@ module Github
|
|
|
47
46
|
# github = Github.new
|
|
48
47
|
# github.issues.labels.find 'user-name', 'repo-name', 'label-name'
|
|
49
48
|
#
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
49
|
+
# github = Github.new user: 'user-name', repo: 'repo-name'
|
|
50
|
+
# github.issues.labels.get label_name: 'bug'
|
|
51
|
+
#
|
|
52
|
+
def get(*args)
|
|
53
|
+
arguments(args, :required => [:user, :repo, :label_name])
|
|
54
|
+
params = arguments.params
|
|
54
55
|
|
|
55
56
|
get_request("/repos/#{user}/#{repo}/labels/#{label_name}", params)
|
|
56
57
|
end
|
|
@@ -66,15 +67,13 @@ module Github
|
|
|
66
67
|
# github = Github.new user: 'user-name', repo: 'repo-name'
|
|
67
68
|
# github.issues.labels.create name: 'API', color: 'FFFFFF'
|
|
68
69
|
#
|
|
69
|
-
def create(
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
filter! VALID_LABEL_INPUTS, params
|
|
75
|
-
assert_required_keys(VALID_LABEL_INPUTS, params)
|
|
70
|
+
def create(*args)
|
|
71
|
+
arguments(args, :required => [:user, :repo]) do
|
|
72
|
+
sift VALID_LABEL_INPUTS
|
|
73
|
+
assert_required VALID_LABEL_INPUTS
|
|
74
|
+
end
|
|
76
75
|
|
|
77
|
-
post_request("/repos/#{user}/#{repo}/labels", params)
|
|
76
|
+
post_request("/repos/#{user}/#{repo}/labels", arguments.params)
|
|
78
77
|
end
|
|
79
78
|
|
|
80
79
|
# Update a label
|
|
@@ -84,19 +83,17 @@ module Github
|
|
|
84
83
|
# <tt>:color</tt> - Required string-6 character hex code, without leading #
|
|
85
84
|
#
|
|
86
85
|
# = Examples
|
|
87
|
-
#
|
|
88
|
-
#
|
|
86
|
+
# github = Github.new
|
|
87
|
+
# github.issues.labels.update 'user-name', 'repo-name', 'label-name',
|
|
89
88
|
# name: 'API', color: "FFFFFF"
|
|
90
89
|
#
|
|
91
|
-
def update(
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
filter! VALID_LABEL_INPUTS, params
|
|
97
|
-
assert_required_keys(VALID_LABEL_INPUTS, params)
|
|
90
|
+
def update(*args)
|
|
91
|
+
arguments(args, :required => [:user, :repo, :label_name]) do
|
|
92
|
+
sift VALID_LABEL_INPUTS
|
|
93
|
+
assert_required VALID_LABEL_INPUTS
|
|
94
|
+
end
|
|
98
95
|
|
|
99
|
-
patch_request("/repos/#{user}/#{repo}/labels/#{label_name}", params)
|
|
96
|
+
patch_request("/repos/#{user}/#{repo}/labels/#{label_name}", arguments.params)
|
|
100
97
|
end
|
|
101
98
|
alias :edit :update
|
|
102
99
|
|
|
@@ -106,14 +103,10 @@ module Github
|
|
|
106
103
|
# github = Github.new
|
|
107
104
|
# github.issues.labels.delete 'user-name', 'repo-name', 'label-name'
|
|
108
105
|
#
|
|
109
|
-
def delete(
|
|
110
|
-
|
|
111
|
-
assert_presence_of user, repo
|
|
112
|
-
|
|
113
|
-
assert_presence_of label_name
|
|
114
|
-
normalize! params
|
|
106
|
+
def delete(*args)
|
|
107
|
+
arguments(args, :required => [:user, :repo, :label_name])
|
|
115
108
|
|
|
116
|
-
delete_request("/repos/#{user}/#{repo}/labels/#{label_name}", params)
|
|
109
|
+
delete_request("/repos/#{user}/#{repo}/labels/#{label_name}", arguments.params)
|
|
117
110
|
end
|
|
118
111
|
|
|
119
112
|
# Add labels to an issue
|
|
@@ -122,13 +115,10 @@ module Github
|
|
|
122
115
|
# github = Github.new
|
|
123
116
|
# github.issues.labels.add 'user-name', 'repo-name', 'issue-id', 'label1', 'label2', ...
|
|
124
117
|
#
|
|
125
|
-
def add(
|
|
126
|
-
|
|
127
|
-
params
|
|
128
|
-
|
|
129
|
-
set :user => user_name, :repo => repo_name
|
|
130
|
-
assert_presence_of user, repo, issue_id
|
|
131
|
-
normalize! params
|
|
118
|
+
def add(*args)
|
|
119
|
+
arguments(args, :required => [:user, :repo, :issue_id])
|
|
120
|
+
params = arguments.params
|
|
121
|
+
params['data'] = arguments.remaining unless arguments.remaining.empty?
|
|
132
122
|
|
|
133
123
|
post_request("/repos/#{user}/#{repo}/issues/#{issue_id}/labels", params)
|
|
134
124
|
end
|
|
@@ -146,10 +136,9 @@ module Github
|
|
|
146
136
|
# github = Github.new
|
|
147
137
|
# github.issues.labels.remove 'user-name', 'repo-name', 'issue-id'
|
|
148
138
|
#
|
|
149
|
-
def remove(
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
normalize! params
|
|
139
|
+
def remove(*args)
|
|
140
|
+
arguments(args, :required => [:user, :repo, :issue_id])
|
|
141
|
+
params = arguments.params
|
|
153
142
|
|
|
154
143
|
if (label_name = params.delete('label_name'))
|
|
155
144
|
delete_request("/repos/#{user}/#{repo}/issues/#{issue_id}/labels/#{label_name}", params)
|
|
@@ -166,13 +155,10 @@ module Github
|
|
|
166
155
|
# github = Github.new
|
|
167
156
|
# github.issues.labels.replace 'user-name', 'repo-name', 'issue-id', 'label1', 'label2', ...
|
|
168
157
|
#
|
|
169
|
-
def replace(
|
|
170
|
-
|
|
171
|
-
params
|
|
172
|
-
|
|
173
|
-
set :user => user_name, :repo => repo_name
|
|
174
|
-
assert_presence_of user, repo, issue_id
|
|
175
|
-
normalize! params
|
|
158
|
+
def replace(*args)
|
|
159
|
+
arguments(args, :required => [:user, :repo, :issue_id])
|
|
160
|
+
params = arguments.params
|
|
161
|
+
params['data'] = arguments.remaining unless arguments.remaining.empty?
|
|
176
162
|
|
|
177
163
|
put_request("/repos/#{user}/#{repo}/issues/#{issue_id}/labels", params)
|
|
178
164
|
end
|