Add mergeMethodSurvey test

This commit is contained in:
Sam Coe 2021-01-21 14:56:05 -08:00
parent 11e873c669
commit f09b8a8e78
No known key found for this signature in database
GPG key ID: 8E322C20F811D086
2 changed files with 22 additions and 8 deletions

View file

@ -34,8 +34,8 @@ type Repository struct {
Parent *Repository
MergeCommitAllowed bool
SquashMergeAllowed bool
RebaseMergeAllowed bool
SquashMergeAllowed bool
// pseudo-field that keeps track of host name of this repo
hostname string
@ -113,8 +113,8 @@ func GitHubRepo(client *Client, repo ghrepo.Interface) (*Repository, error) {
...repo
}
mergeCommitAllowed
squashMergeAllowed
rebaseMergeAllowed
squashMergeAllowed
}
}`
variables := map[string]interface{}{

View file

@ -571,8 +571,8 @@ func TestPRMerge_interactive(t *testing.T) {
httpmock.StringResponse(`
{ "data": { "repository": {
"mergeCommitAllowed": true,
"squashMergeAllowed": true,
"rebaseMergeAllowed": true
"rebaseMergeAllowed": true,
"squashMergeAllowed": true
} } }`))
http.Register(
httpmock.GraphQL(`mutation PullRequestMerge\b`),
@ -626,8 +626,8 @@ func TestPRMerge_interactiveWithDeleteBranch(t *testing.T) {
httpmock.StringResponse(`
{ "data": { "repository": {
"mergeCommitAllowed": true,
"squashMergeAllowed": true,
"rebaseMergeAllowed": true
"rebaseMergeAllowed": true,
"squashMergeAllowed": true
} } }`))
http.Register(
httpmock.GraphQL(`mutation PullRequestMerge\b`),
@ -680,8 +680,8 @@ func TestPRMerge_interactiveCancelled(t *testing.T) {
httpmock.StringResponse(`
{ "data": { "repository": {
"mergeCommitAllowed": true,
"squashMergeAllowed": true,
"rebaseMergeAllowed": true
"rebaseMergeAllowed": true,
"squashMergeAllowed": true
} } }`))
cs, cmdTeardown := test.InitCmdStubber()
@ -707,3 +707,17 @@ func TestPRMerge_interactiveCancelled(t *testing.T) {
assert.Equal(t, "Cancelled.\n", output.Stderr())
}
func Test_mergeMethodSurvey(t *testing.T) {
repo := &api.Repository{
MergeCommitAllowed: false,
RebaseMergeAllowed: true,
SquashMergeAllowed: true,
}
as, surveyTeardown := prompt.InitAskStubber()
defer surveyTeardown()
as.StubOne(0) // Select first option which is rebase merge
method, err := mergeMethodSurvey(repo)
assert.Nil(t, err)
assert.Equal(t, api.PullRequestMergeMethodRebase, method)
}