github.com/containers/podman/v2@v2.2.2-0.20210501105131-c1e07d070c4c/test/utils/utils_suite_test.go (about) 1 package utils_test 2 3 import ( 4 "fmt" 5 "io" 6 "os/exec" 7 "strings" 8 "testing" 9 10 . "github.com/containers/podman/v2/test/utils" 11 . "github.com/onsi/ginkgo" 12 . "github.com/onsi/gomega" 13 "github.com/onsi/gomega/gexec" 14 ) 15 16 var FakeOutputs map[string][]string 17 var GoechoPath = "../goecho/goecho" 18 19 type FakePodmanTest struct { 20 PodmanTest 21 } 22 23 func FakePodmanTestCreate() *FakePodmanTest { 24 FakeOutputs = make(map[string][]string) 25 p := &FakePodmanTest{ 26 PodmanTest: PodmanTest{ 27 PodmanBinary: GoechoPath, 28 }, 29 } 30 31 p.PodmanMakeOptions = p.makeOptions 32 return p 33 } 34 35 func (p *FakePodmanTest) makeOptions(args []string, noEvents, noCache bool) []string { 36 return FakeOutputs[strings.Join(args, " ")] 37 } 38 39 func StartFakeCmdSession(args []string) *PodmanSession { 40 var outWriter, errWriter io.Writer 41 command := exec.Command(GoechoPath, args...) 42 session, err := gexec.Start(command, outWriter, errWriter) 43 if err != nil { 44 fmt.Println(err) 45 } 46 return &PodmanSession{session} 47 } 48 49 func TestUtils(t *testing.T) { 50 RegisterFailHandler(Fail) 51 RunSpecs(t, "Unit test for test utils package") 52 }