github.com/vlifesystems/rulehunter@v0.0.0-20180501090014-673078aa4a83/rulehunter_test.go (about) 1 package main 2 3 import ( 4 "bytes" 5 "os/exec" 6 "testing" 7 ) 8 9 func runOSCmd(t *testing.T, fatalError bool, name string, arg ...string) { 10 cmd := exec.Command(name, arg...) 11 var cmdOut bytes.Buffer 12 var cmdErr bytes.Buffer 13 cmd.Stdout = &cmdOut 14 cmd.Stderr = &cmdErr 15 if err := cmd.Run(); err != nil { 16 if fatalError { 17 t.Fatalf("runOSCmd(%s, %v), err: %s, stdout: %s, stderr: %s", 18 name, arg, err, cmdOut.String(), cmdErr.String()) 19 } else { 20 t.Logf("runOSCmd(%s, %v), err: %s, stdout: %s, stderr: %s", 21 name, arg, err, cmdOut.String(), cmdErr.String()) 22 } 23 } 24 }