class Lita::Reviewme::Github
Attributes
config[R]
pr_id[R]
repo[R]
Public Class Methods
new(config, repo, pr_id)
click to toggle source
# File lib/lita-reviewme/github.rb, line 20 def initialize(config, repo, pr_id) @config = config @repo = repo @pr_id = pr_id end
Public Instance Methods
assign(reviewer)
click to toggle source
# File lib/lita-reviewme/github.rb, line 32 def assign(reviewer) request_review(reviewer) if github_request_review add_comment(reviewer) if github_comment rescue Octokit::Error raise CannotPostComment end
owner()
click to toggle source
# File lib/lita-reviewme/github.rb, line 26 def owner pull_request.user.login rescue Octokit::Error raise UnknownOwner end
Private Instance Methods
add_comment(reviewer)
click to toggle source
# File lib/lita-reviewme/github.rb, line 55 def add_comment(reviewer) client.add_comment(repo, pr_id, comment(reviewer)) end
client()
click to toggle source
# File lib/lita-reviewme/github.rb, line 41 def client @client ||= Octokit::Client.new(access_token: github_access_token) end
comment(reviewer)
click to toggle source
# File lib/lita-reviewme/github.rb, line 59 def comment(reviewer) if github_comment_template.respond_to?(:call) github_comment_template.call(reviewer, pull_request) else github_comment_template % { reviewer: "@#{reviewer}" } end end
pull_request()
click to toggle source
# File lib/lita-reviewme/github.rb, line 45 def pull_request @pull_request ||= client.pull_request(repo, pr_id) end
request_review(reviewer)
click to toggle source
# File lib/lita-reviewme/github.rb, line 49 def request_review(reviewer) options = { accept: 'application/vnd.github.black-cat-preview' } client.request_pull_request_review(repo, pr_id, [reviewer], options) end