tests: don't buffer worker stdin/stdout 63/32363/4
authorDave Wallace <dwallacelf@gmail.com>
Tue, 18 May 2021 21:12:16 +0000 (17:12 -0400)
committerPaul Vinciguerra <pvinci@vinciconsulting.com>
Thu, 20 May 2021 18:50:42 +0000 (18:50 +0000)
- Required to get VCLAppWorker stdin / stdout data
  into log.txt when a test fails.

Type: test

Change-Id: I4db467986940f701750aec6d842a4d9aee22b4e6
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
test/framework.py [changed mode: 0644->0755]

old mode 100644 (file)
new mode 100755 (executable)
index dcea2e7..0acc160
@@ -1727,8 +1727,9 @@ class Worker(Thread):
         env.update(self.env)
         env["CK_LOG_FILE_NAME"] = "-"
         self.process = subprocess.Popen(
-            self.args, shell=False, env=env, preexec_fn=os.setpgrp,
-            stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+            ['stdbuf', '-o0', '-e0'] + self.args, shell=False, env=env,
+            preexec_fn=os.setpgrp, stdout=subprocess.PIPE,
+            stderr=subprocess.PIPE)
         self.wait_for_enter()
         out, err = self.process.communicate()
         self.logger.debug("Finished running `{app}'".format(app=self.app_name))