[RFC PATCH 01/16] patman: Use test_util to show test results

Daniel Axtens dja at axtens.net
Mon Jul 6 14:46:15 AEST 2020


Hi Simon,

I can't see a cover letter so apologies if I've misunderstood something
basic, but this doesn't appear to apply to the patchwork tree - I'm
guessing the patchwork relevance is with regards to the last few patches
that (AFAICT) parse the patchwork web interface for information?

I haven't fully digested the patches (and I lack a lot of context) but
is there a reason the patchwork API isn't able to meet your needs here?
(And if so, could we extend it rather than having you parse the frontend?)

Regards,
Daniel

> This handles skipped tests correctly, so use it instead of the existing
> code.
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
>
>  tools/patman/main.py      | 8 ++------
>  tools/patman/test_util.py | 6 +++---
>  2 files changed, 5 insertions(+), 9 deletions(-)
>
> diff --git a/tools/patman/main.py b/tools/patman/main.py
> index 28a9a26087..03668d1bb8 100755
> --- a/tools/patman/main.py
> +++ b/tools/patman/main.py
> @@ -25,6 +25,7 @@ from patman import patchstream
>  from patman import project
>  from patman import settings
>  from patman import terminal
> +from patman import test_util
>  from patman import test_checkpatch
>  
>  
> @@ -101,12 +102,7 @@ elif options.test:
>          suite = doctest.DocTestSuite(module)
>          suite.run(result)
>  
> -    # TODO: Surely we can just 'print' result?
> -    print(result)
> -    for test, err in result.errors:
> -        print(err)
> -    for test, err in result.failures:
> -        print(err)
> +    sys.exit(test_util.ReportResult('patman', None, result))
>  
>  # Called from git with a patch filename as argument
>  # Printout a list of additional CC recipients for this patch
> diff --git a/tools/patman/test_util.py b/tools/patman/test_util.py
> index aac58fb72f..0827488f33 100644
> --- a/tools/patman/test_util.py
> +++ b/tools/patman/test_util.py
> @@ -123,12 +123,12 @@ def ReportResult(toolname:str, test_name: str, result: unittest.TestResult):
>      for test, err in result.failures:
>          print(err, result.failures)
>      if result.skipped:
> -        print('%d binman test%s SKIPPED:' %
> -              (len(result.skipped), 's' if len(result.skipped) > 1 else ''))
> +        print('%d %s test%s SKIPPED:' % (len(result.skipped), toolname,
> +            's' if len(result.skipped) > 1 else ''))
>          for skip_info in result.skipped:
>              print('%s: %s' % (skip_info[0], skip_info[1]))
>      if result.errors or result.failures:
> -        print('binman tests FAILED')
> +        print('%s tests FAILED' % toolname)
>          return 1
>      return 0
>  
> -- 
> 2.27.0.212.ge8ba1cc988-goog
>
> _______________________________________________
> Patchwork mailing list
> Patchwork at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/patchwork


More information about the Patchwork mailing list