From 74c8b508338ccdd0780aa1e067a1e8fcb9ee326b Mon Sep 17 00:00:00 2001 From: Paul Elder Date: Fri, 10 Jul 2020 22:57:10 +0900 Subject: tests: v4l2_compat: Check v4l2-compliance and v4l2-ctl versions v4l2-compliance and v4l2-ctl with version 1.20 and before will fail with v4l2-compat. Check the versions of v4l2-compliance and v4l2-ctl before continuing. Signed-off-by: Paul Elder Reviewed-by: Laurent Pinchart --- test/v4l2_compat/v4l2_compat_test.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'test/v4l2_compat') diff --git a/test/v4l2_compat/v4l2_compat_test.py b/test/v4l2_compat/v4l2_compat_test.py index 8aca2220..b054fe65 100755 --- a/test/v4l2_compat/v4l2_compat_test.py +++ b/test/v4l2_compat/v4l2_compat_test.py @@ -9,12 +9,15 @@ import argparse import glob import os +from packaging import version import re import shutil import signal import subprocess import sys +MIN_V4L_UTILS_VERSION = version.parse("1.21.0") + TestPass = 0 TestFail = -1 TestSkip = 77 @@ -90,11 +93,21 @@ def main(argv): print('v4l2-compliance is not available') return TestSkip + ret, out = run_with_stdout(v4l2_compliance, '--version') + if (ret != 0 or version.parse(out[-2].split()[-1]) < MIN_V4L_UTILS_VERSION): + print('v4l2-compliance version >= 1.21.0 required') + return TestSkip + v4l2_ctl = shutil.which('v4l2-ctl') if v4l2_ctl is None: print('v4l2-ctl is not available') return TestSkip + ret, out = run_with_stdout(v4l2_ctl, '--version') + if (ret != 0 or version.parse(out[-2].split()[-1]) < MIN_V4L_UTILS_VERSION): + print('v4l2-ctl version >= 1.21.0 required') + return TestSkip + dev_nodes = glob.glob('/dev/video*') if len(dev_nodes) == 0: print('no video nodes available to test with') -- cgit v1.2.1