test-runner: special case python3 verbose option

Historically if you wanted to see output from a python test you needed
to specify -v pytests. This was also the case if IWD was started from
python.

Nearly every time I run test-runner I would specify "-v iwd,pytests"
only to get the IWD output on these specific tests.

Instead we can special case 'python3' (previously 'pytests') inside
execute_program so that turning on verbosity for 'iwd' also turns it
on for the python tests.
This commit is contained in:
James Prestwood 2019-11-05 15:36:04 -08:00 committed by Denis Kenzior
parent 8ec4a53adb
commit 5709a4afcf
1 changed files with 10 additions and 6 deletions

View File

@ -541,13 +541,17 @@ static pid_t execute_program(char *argv[], char *envp[], bool wait,
return -1;
/*
* We have to special case this. execute_program automatically logs to
* <process>.log, which would put all iwd output into valgrind.log
* rather than iwd.log. Since we are explicitly having valgrind output
* to a log file we can assume any output from this is only IWD, and not
* valgrind.
* We have a few special cases here:
*
* Since execute_program automatically logs to <process>.log this would
* put all iwd output into valgrind.log rather than iwd.log. Since we
* are explicitly having valgrind output to a log file we can assume any
* output from this is only IWD, and not valgrind.
*
* python3 is special cased so that tests which start IWD manually can
* still show IWD output when using -v iwd.
*/
if (!strcmp(log_name, "valgrind"))
if (!strcmp(log_name, "valgrind") || !strcmp(log_name, "python3"))
log_name = "iwd";
str = l_strjoinv(argv, ' ');