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