3551: When invoking run_test_server.py during tests, pass stderr
authorTom Clegg <tom@curoverse.com>
Wed, 13 Aug 2014 19:10:13 +0000 (15:10 -0400)
committerTom Clegg <tom@curoverse.com>
Wed, 13 Aug 2014 19:10:13 +0000 (15:10 -0400)
through to caller instead of discarding.

services/keepproxy/keepproxy_test.go

index b9d52769f1cc913e78a9f53aa0caef2b0b05e7a5..c4e5ae7258f0963093232f78877820ed15c0296c 100644 (file)
@@ -39,12 +39,27 @@ func (s *ServerRequiredSuite) SetUpSuite(c *C) {
        defer os.Chdir(cwd)
 
        os.Chdir(pythonDir())
-
-       if err := exec.Command("python", "run_test_server.py", "start").Run(); err != nil {
-               panic("'python run_test_server.py start' returned error")
+       {
+               cmd := exec.Command("python", "run_test_server.py", "start")
+               stderr, err := cmd.StderrPipe()
+               if err != nil {
+                       log.Fatalf("Setting up stderr pipe: %s", err)
+               }
+               go io.Copy(os.Stderr, stderr)
+               if err := cmd.Run(); err != nil {
+                       panic(fmt.Sprintf("'python run_test_server.py start' returned error %s", err))
+               }
        }
-       if err := exec.Command("python", "run_test_server.py", "start_keep").Run(); err != nil {
-               panic("'python run_test_server.py start_keep' returned error")
+       {
+               cmd := exec.Command("python", "run_test_server.py", "start_keep")
+               stderr, err := cmd.StderrPipe()
+               if err != nil {
+                       log.Fatalf("Setting up stderr pipe: %s", err)
+               }
+               go io.Copy(os.Stderr, stderr)
+               if err := cmd.Run(); err != nil {
+                       panic(fmt.Sprintf("'python run_test_server.py start_keep' returned error %s", err))
+               }
        }
 
        os.Setenv("ARVADOS_API_HOST", "localhost:3001")