test: Fix unit test logging with python3
A logfile must be opened as a text file and encoding is specified. Then it can accept a string. Current behaviour we get,
Message: 'ok 2834 sequential/test-worker-prof' Arguments: () --- Logging error --- Traceback (most recent call last): File "/usr/lib64/python3.7/logging/init.py", line 1037, in emit stream.write(msg + self.terminator) TypeError: a bytes-like object is required, not 'str' Call stack: File "tools/test.py", line 1734, in sys.exit(Main()) File "tools/test.py", line 1710, in Main if RunTestCases(cases_to_run, options.progress, options.j, options.flaky_tests): File "tools/test.py", line 933, in RunTestCases return progress.Run(tasks) File "tools/test.py", line 141, in Run self.RunSingle(False, 0) File "tools/test.py", line 202, in RunSingle self.HasRun(output) File "tools/test.py", line 365, in HasRun logger.info(' ---')
Checklist
-
make -j4 test
(UNIX), orvcbuild test
(Windows) passes -
tests and/or benchmarks are included -
commit message follows commit guidelines