[libcamera-devel] [PATCH 2/2] test: v4l2_compat_test: Fix v4l2-compliance version parsing

Laurent Pinchart laurent.pinchart at ideasonboard.com
Fri Aug 27 13:58:14 CEST 2021


Hi Paul,

Thank you for the patch.

On Fri, Aug 27, 2021 at 03:25:21PM +0900, Paul Elder wrote:
> v4l2-compliance changed their version string:
> 
> v4l2-compliance 1.21.0-4618
> v4l2-compliance SHA: cc211b76476aca2c072ffa83a9b003957d5f3909, 64 bits, 64-bit time_t
> 
> v4l2-compliance 1.21.0-4838, 64 bits, 64-bit time_t
> 
> The current parsing takes the last result of split, which works for the
> former, but not the latter. Take the second result of split instead, and
> strip away any commas.
> 
> Signed-off-by: Paul Elder <paul.elder at ideasonboard.com>

Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
Tested-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>

However, the unit test now fails for me:

stderr:
Traceback (most recent call last):
  File "/home/laurent/src/iob/oss/libcamera/libcamera/test/v4l2_compat/v4l2_compat_test.py", line 159, in <module>
    sys.exit(main(sys.argv))
  File "/home/laurent/src/iob/oss/libcamera/libcamera/test/v4l2_compat/v4l2_compat_test.py", line 124, in main
    driver = grep('Driver name', out)[0].split(':')[-1].strip()
IndexError: list index out of range

This should be fixed before merging this patch. I'll have a quick look.

> ---
> Kieran, can you please check if this works?
> ---
>  test/v4l2_compat/v4l2_compat_test.py | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/test/v4l2_compat/v4l2_compat_test.py b/test/v4l2_compat/v4l2_compat_test.py
> index 51bfa952..ae892ced 100755
> --- a/test/v4l2_compat/v4l2_compat_test.py
> +++ b/test/v4l2_compat/v4l2_compat_test.py
> @@ -94,7 +94,7 @@ def main(argv):
>          return TestSkip
>  
>      ret, out = run_with_stdout(v4l2_compliance, '--version')
> -    if ret != 0 or version.parse(out[0].split()[-1]) < MIN_V4L_UTILS_VERSION:
> +    if ret != 0 or version.parse(out[0].split()[1].replace(',', '')) < MIN_V4L_UTILS_VERSION:
>          print('v4l2-compliance version >= 1.21.0 required')
>          return TestSkip
>  

-- 
Regards,

Laurent Pinchart


More information about the libcamera-devel mailing list