Skip to content
Permalink
Branch: master
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
83 lines (79 sloc) 2.78 KB
Feature: hub pr checkout <PULLREQ-NUMBER>
Background:
Given I am in "git://github.com/mojombo/jekyll.git" git repo
And I am "mojombo" on github.com with OAuth token "OTOKEN"
Scenario: Checkout a pull request
Given the GitHub API server:
"""
get('/repos/mojombo/jekyll/pulls/77') {
json :number => 77, :head => {
:ref => "fixes",
:repo => {
:owner => { :login => "mislav" },
:name => "jekyll",
:private => false
}
}, :base => {
:repo => {
:name => 'jekyll',
:html_url => 'https://github.com/mojombo/jekyll',
:owner => { :login => "mojombo" },
}
},
:maintainer_can_modify => false,
:html_url => 'https://github.com/mojombo/jekyll/pull/77'
}
"""
When I successfully run `hub pr checkout 77`
Then "git fetch origin refs/pull/77/head:fixes" should be run
And "git checkout fixes" should be run
And "fixes" should merge "refs/pull/77/head" from remote "origin"
Scenario: Custom name for new branch
Given the GitHub API server:
"""
get('/repos/mojombo/jekyll/pulls/77') {
json :number => 77, :head => {
:ref => "fixes",
:repo => {
:name => "jekyll",
:owner => { :login => "mislav" },
}
}, :base => {
:repo => {
:name => 'jekyll',
:html_url => 'https://github.com/mojombo/jekyll',
:owner => { :login => "mojombo" },
}
},
:maintainer_can_modify => false,
:html_url => 'https://github.com/mojombo/jekyll/pull/77'
}
"""
When I successfully run `hub pr checkout 77 fixes-from-mislav`
Then "git fetch origin refs/pull/77/head:fixes-from-mislav" should be run
And "git checkout fixes-from-mislav" should be run
And "fixes-from-mislav" should merge "refs/pull/77/head" from remote "origin"
Scenario: Same-repo
Given the GitHub API server:
"""
get('/repos/mojombo/jekyll/pulls/77') {
json :number => 77, :head => {
:ref => "fixes",
:repo => {
:name => "jekyll",
:owner => { :login => "mojombo" },
}
}, :base => {
:repo => {
:name => "jekyll",
:html_url => "https://github.com/mojombo/jekyll",
:owner => { :login => "mojombo" },
}
},
:html_url => 'https://github.com/mojombo/jekyll/pull/77'
}
"""
When I successfully run `hub pr checkout 77`
Then "git fetch origin +refs/heads/fixes:refs/remotes/origin/fixes" should be run
And "git checkout -b fixes --no-track origin/fixes" should be run
And "fixes" should merge "refs/heads/fixes" from remote "origin"
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.