github.com/criteo/command-launcher@v0.0.0-20230407142452-fb616f546e98/internal/helper/test-cmd.go (about) 1 package helper 2 3 import ( 4 "bytes" 5 "io/ioutil" 6 7 "github.com/spf13/cobra" 8 ) 9 10 func TestCommand(cmd *cobra.Command, args ...string) (string, error) { 11 buf := new(bytes.Buffer) 12 cmd.SetOut(buf) 13 cmd.SetErr(buf) 14 cmd.SetArgs(args) 15 err := cmd.Execute() 16 17 if err != nil { 18 return "", err 19 } 20 21 out, err := ioutil.ReadAll(buf) 22 if err != nil { 23 return "", err 24 } 25 26 return string(out), nil 27 }