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; return -1;
/* /*
* We have to special case this. execute_program automatically logs to * We have a few special cases here:
* <process>.log, which would put all iwd output into valgrind.log *
* rather than iwd.log. Since we are explicitly having valgrind output * Since execute_program automatically logs to <process>.log this would
* to a log file we can assume any output from this is only IWD, and not * put all iwd output into valgrind.log rather than iwd.log. Since we
* valgrind. * 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"; log_name = "iwd";
str = l_strjoinv(argv, ' '); str = l_strjoinv(argv, ' ');