InitCmdStubber

This commit is contained in:
vilmibm 2020-03-13 13:31:52 -05:00
parent c4c967fa0f
commit fba4f4d19e
2 changed files with 15 additions and 16 deletions

View file

@ -10,7 +10,6 @@ import (
"testing"
"github.com/cli/cli/context"
"github.com/cli/cli/utils"
"github.com/AlecAivazis/survey/v2"
"github.com/AlecAivazis/survey/v2/core"
@ -26,9 +25,8 @@ func TestPRCreate(t *testing.T) {
} } } }
`))
cs := CmdStubber{}
teardown := utils.SetPrepareCmd(createStubbedPrepareCmd(&cs))
defer teardown()
cs, cmdTeardown := InitCmdStubber()
defer cmdTeardown()
cs.Stub("") // git status
cs.Stub("1234567890,commit 0\n2345678901,commit 1") // git log
@ -65,9 +63,8 @@ func TestPRCreate_web(t *testing.T) {
http := initFakeHTTP()
http.StubRepoResponse("OWNER", "REPO")
cs := CmdStubber{}
teardown := utils.SetPrepareCmd(createStubbedPrepareCmd(&cs))
defer teardown()
cs, cmdTeardown := InitCmdStubber()
defer cmdTeardown()
cs.Stub("") // git status
cs.Stub("1234567890,commit 0\n2345678901,commit 1") // git log
@ -97,9 +94,8 @@ func TestPRCreate_ReportsUncommittedChanges(t *testing.T) {
} } } }
`))
cs := CmdStubber{}
teardown := utils.SetPrepareCmd(createStubbedPrepareCmd(&cs))
defer teardown()
cs, cmdTeardown := InitCmdStubber()
defer cmdTeardown()
cs.Stub(" M git/git.go") // git status
cs.Stub("1234567890,commit 0\n2345678901,commit 1") // git log
@ -164,9 +160,8 @@ func TestPRCreate_cross_repo_same_branch(t *testing.T) {
} } } }
`))
cs := CmdStubber{}
teardown := utils.SetPrepareCmd(createStubbedPrepareCmd(&cs))
defer teardown()
cs, cmdTeardown := InitCmdStubber()
defer cmdTeardown()
cs.Stub("") // git status
cs.Stub("1234567890,commit 0\n2345678901,commit 1") // git log
@ -300,9 +295,7 @@ func TestPRCreate_survey_preview_defaults(t *testing.T) {
} } } }
`))
// TODO initCmdStubber in command/testing
cs := CmdStubber{}
cmdTeardown := utils.SetPrepareCmd(createStubbedPrepareCmd(&cs))
cs, cmdTeardown := InitCmdStubber()
defer cmdTeardown()
cs.Stub("") // git status

View file

@ -21,6 +21,12 @@ type CmdStubber struct {
Calls []*exec.Cmd
}
func InitCmdStubber() (*CmdStubber, func()) {
cs := CmdStubber{}
teardown := utils.SetPrepareCmd(createStubbedPrepareCmd(&cs))
return &cs, teardown
}
func (cs *CmdStubber) Stub(desiredOutput string) {
// TODO maybe have some kind of command mapping but going simple for now
cs.Stubs = append(cs.Stubs, &test.OutputStub{[]byte(desiredOutput)})