class CC::PullRequests
Public Instance Methods
receive_pull_request()
click to toggle source
# File lib/cc/pull_requests.rb, line 8 def receive_pull_request setup_http state = @payload["state"] if %w[pending success failure skipped error].include?(state) && report_status? send("update_status_#{state}") else @response = simple_failure("Unknown state") end response end
receive_pull_request_coverage()
click to toggle source
# File lib/cc/pull_requests.rb, line 21 def receive_pull_request_coverage setup_http state = @payload["state"] if state == "success" && report_status? update_coverage_status_success else @response = simple_failure("Unknown state") end response end
receive_test()
click to toggle source
# File lib/cc/pull_requests.rb, line 2 def receive_test setup_http receive_test_status end
Private Instance Methods
base_status_url(_commit_sha)
click to toggle source
# File lib/cc/pull_requests.rb, line 112 def base_status_url(_commit_sha) raise NotImplementedError end
commit_sha()
click to toggle source
# File lib/cc/pull_requests.rb, line 120 def commit_sha @payload.fetch("commit_sha") end
git_url()
click to toggle source
# File lib/cc/pull_requests.rb, line 128 def git_url @git_url ||= URI.parse(@payload.fetch("git_url")) end
number()
click to toggle source
# File lib/cc/pull_requests.rb, line 124 def number @payload.fetch("number") end
presenter()
click to toggle source
# File lib/cc/pull_requests.rb, line 94 def presenter CC::Service::PullRequestsPresenter.new(@payload) end
receive_test_status()
click to toggle source
# File lib/cc/pull_requests.rb, line 76 def receive_test_status url = base_status_url("0" * 40) params = { state: "success" } raw_post(url, params.to_json) rescue CC::Service::HTTPError => e if e.status == test_status_code { ok: true, params: params.as_json, status: e.status, endpoint_url: url, message: "Access token is valid", } else raise end end
report_status?()
click to toggle source
# File lib/cc/pull_requests.rb, line 36 def report_status? raise NotImplementedError end
response()
click to toggle source
# File lib/cc/pull_requests.rb, line 44 def response @response || simple_failure("Nothing happened") end
setup_http()
click to toggle source
# File lib/cc/pull_requests.rb, line 116 def setup_http raise NotImplementedError end
simple_failure(message)
click to toggle source
# File lib/cc/pull_requests.rb, line 40 def simple_failure(message) { ok: false, message: message } end
status_url()
click to toggle source
# File lib/cc/pull_requests.rb, line 108 def status_url base_status_url(commit_sha) end
test_status_code()
click to toggle source
# File lib/cc/pull_requests.rb, line 72 def test_status_code raise NotImplementedError end
update_coverage_status_success()
click to toggle source
# File lib/cc/pull_requests.rb, line 56 def update_coverage_status_success raise NotImplementedError end
update_status(state, description, context = config.context)
click to toggle source
# File lib/cc/pull_requests.rb, line 98 def update_status(state, description, context = config.context) params = { context: context, description: description, state: state, target_url: @payload["details_url"], } @response = service_post(status_url, params.to_json) end
update_status_error()
click to toggle source
# File lib/cc/pull_requests.rb, line 64 def update_status_error raise NotImplementedError end
update_status_failure()
click to toggle source
# File lib/cc/pull_requests.rb, line 60 def update_status_failure raise NotImplementedError end
update_status_pending()
click to toggle source
# File lib/cc/pull_requests.rb, line 68 def update_status_pending raise NotImplementedError end
update_status_skipped()
click to toggle source
# File lib/cc/pull_requests.rb, line 48 def update_status_skipped raise NotImplementedError end
update_status_success()
click to toggle source
# File lib/cc/pull_requests.rb, line 52 def update_status_success raise NotImplementedError end