mirror of https://github.com/ARMmbed/mbed-os.git
Fix to unit test losing process output due to timing issue
parent
442cbba141
commit
039fbe7e26
|
@ -51,8 +51,13 @@ def execute_program(args, error_msg="An error occurred!", success_msg=None):
|
||||||
stdout=subprocess.PIPE,
|
stdout=subprocess.PIPE,
|
||||||
stderr=subprocess.STDOUT)
|
stderr=subprocess.STDOUT)
|
||||||
|
|
||||||
|
# Output is stripped to remove newline character. logging adds its own
|
||||||
|
# so we avoid double newlines.
|
||||||
|
# Because the process can terminate before the loop has read all lines,
|
||||||
|
# we read the output remnant just in case. Otherwise we lose it.
|
||||||
while process.poll() is None:
|
while process.poll() is None:
|
||||||
logging.info(process.stdout.readline().decode("utf8"))
|
logging.info(process.stdout.readline().decode('utf8').rstrip('\n'))
|
||||||
|
logging.info(process.stdout.read().decode('utf8').rstrip('\n'))
|
||||||
|
|
||||||
retcode = process.wait()
|
retcode = process.wait()
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue