class Ruboty::PR::Actions::SearchPullRequests
Public Instance Methods
call()
click to toggle source
# File lib/ruboty/pr/actions/search_pull_requests.rb, line 5 def call if has_access_token? list else require_access_token end end
Private Instance Methods
empty_summary()
click to toggle source
# File lib/ruboty/pr/actions/search_pull_requests.rb, line 31 def empty_summary "Issue not found" end
issues()
click to toggle source
# File lib/ruboty/pr/actions/search_pull_requests.rb, line 45 def issues @issues ||= search_result end
list()
click to toggle source
# File lib/ruboty/pr/actions/search_pull_requests.rb, line 15 def list message.reply(search_summary, code: true) end
repositories()
click to toggle source
# File lib/ruboty/pr/actions/search_pull_requests.rb, line 35 def repositories repos = Hash.new { |hash, key| hash[key] = [] } issues.each do |issue| next unless issue.pull_request repo_name = issue.repository.name repos[repo_name] << issue end repos end
search_result()
click to toggle source
# File lib/ruboty/pr/actions/search_pull_requests.rb, line 49 def search_result client.issues(nil, state: "all", since: since) end
search_summary()
click to toggle source
# File lib/ruboty/pr/actions/search_pull_requests.rb, line 19 def search_summary if issues.empty? empty_summary else repositories.sort.map do |repo_name, repo_issues| repo_issues.map do |issue| "* [#{(issue.state == "closed") ? "x" : " "}] [#{repo_name}##{issue.number}: #{issue.title}](#{issue.html_url})" end.join("\n") end.join("\n") end end
since()
click to toggle source
# File lib/ruboty/pr/actions/search_pull_requests.rb, line 53 def since case message[:since] when "today" then Date.today.midnight.iso8601 when "yesterday" then Date.yesterday.midnight.iso8601 end end