Add a compliance tool to ease testing of cameras. In contrast to the
unit-tests under test/ that aims to test the internal components of
libcamera the compliance tool aims to test application use-cases and to
some extent the public API.
This change adds the boilerplate code of a simple framework for the
creation of tests. The tests aim both to demonstrate the tool and to
catch real problems. The tests added are:
- Test that if one queues exactly N requests to a camera exactly N
requests are eventually completed.
- Test that a configured camera can be started and stopped multiple
times in an attempt to exercise cleanup code paths otherwise not
often tested with 'cam' for example.
Signed-off-by: Niklas Söderlund <email@example.com>
Acked-by: Kieran Bingham <firstname.lastname@example.org>
Tested-by: Kieran Bingham <email@example.com>
Reviewed-by: Laurent Pinchart <firstname.lastname@example.org>
Tested-by: Jean-Michel Hautbois <email@example.com>