fix: pull_sha return value when no pull request #434
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pronto::Formatter::GithubStatusFormatter
does not work outside of pull requests (pronto run throws an error), becausePronto::Github#create_commit_status
retrieves sha bysha = pull_sha || status.sha
, and pull_sha either returns pull's sha (if the pull exists) or throws an error.This PR fixes it.
Pronto::Github#pull throws error when the PR cannot be found, thus
pull[:head][:sha] if pull
makes no sense (it exists or throws)I fix this by catching Pronto::Error and returning nil. The error is thrown when PR cannot be found in Pronto::GithubPull#pull_by_id, Pronto::GithubPull#pull_by_branch or Pronto::GithubPull#pull_by_commit.