Re: [PATCH v3 0/5] Fix nits in the kunit

From: Brendan Higgins
Date: Wed Dec 04 2019 - 14:21:53 EST


On Tue, Dec 03, 2019 at 02:41:26PM -0800, Brendan Higgins wrote:
> On Tue, Dec 3, 2019 at 10:08 AM SeongJae Park <sj38.park@xxxxxxxxx> wrote:
> >
> > This patchset contains trivial fixes for the kunit documentations and the
> > wrapper python scripts.
> >
> > Changes from v2 (https://lore.kernel.org/linux-kselftest/1575361141-6806-1-git-send-email-sj38.park@xxxxxxxxx/T/#t):
> > - Make 'build_dir' if not exists (missed from v3 by mistake)
> >
> > SeongJae Park (5):
> > docs/kunit/start: Use in-tree 'kunit_defconfig'
> > kunit: Remove duplicated defconfig creation
> > kunit: Create default config in '--build_dir'
> > kunit: Place 'test.log' under the 'build_dir'
> > kunit: Rename 'kunitconfig' to '.kunitconfig'
> >
> > Documentation/dev-tools/kunit/start.rst | 13 +++++--------
> > tools/testing/kunit/kunit.py | 16 ++++++++++------
> > tools/testing/kunit/kunit_kernel.py | 8 ++++----
> > 3 files changed, 19 insertions(+), 18 deletions(-)
>
> Tested-by: Brendan Higgins <brendanhiggins@xxxxxxxxxx>

I just realized that I forgot to test for something...

The following command fails:

./tools/testing/kunit/kunit.py run --timeout=60 --jobs=12 --defconfig

[11:17:13] Building KUnit Kernel ...
[11:17:16] Starting KUnit Kernel ...
Traceback (most recent call last):
  File "tools/testing/kunit/kunit.py", line 142, in <module>
    main(sys.argv[1:])
  File "tools/testing/kunit/kunit.py", line 135, in main
    result = run_tests(linux, request)
  File "tools/testing/kunit/kunit.py", line 67, in run_tests
    test_result = kunit_parser.parse_run_tests(kunit_output)
  File "/usr/local/google/home/brendanhiggins/gbmc-linux/tools/testing/kunit/kunit_parser.py", line 283, in parse_run_tests
    test_result = parse_test_result(list(isolate_kunit_output(kernel_output)))
  File "/usr/local/google/home/brendanhiggins/gbmc-linux/tools/testing/kunit/kunit_parser.py", line 54, in isolate_kunit_output
    for line in kernel_output:
  File "/usr/local/google/home/brendanhiggins/gbmc-linux/tools/testing/kunit/kunit_kernel.py", line 146, in run_kernel
    with open(os.path.join(build_dir, 'test.log'), 'w') as f:
  File "/usr/lib/python3.7/posixpath.py", line 80, in join
    a = os.fspath(a)
TypeError: expected str, bytes or os.PathLike object, not NoneType

It seems as though you assume that build_dir is always populated by the flag.