From 4f8ba02bbcf7c0e4f5c99f9ce6b788938f5987ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20S=C3=B6derlund?= Date: Wed, 8 May 2019 17:37:04 +0200 Subject: test: v4l2_device: Allow each test to specify which device and entity to test MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Prepare for different tests which implements V4L2DeviceTest to specify which media device and entity they wish to test. There is no functional changes, all tests still use vivid to perform there tests. Signed-off-by: Niklas Söderlund Acked-by: Kieran Bingham Reviewed-by: Laurent Pinchart --- test/v4l2_device/buffer_sharing.cpp | 5 ++--- test/v4l2_device/capture_async.cpp | 2 +- test/v4l2_device/double_open.cpp | 3 +++ test/v4l2_device/formats.cpp | 3 +++ test/v4l2_device/request_buffers.cpp | 4 ++++ test/v4l2_device/stream_on_off.cpp | 3 +++ test/v4l2_device/v4l2_device_test.cpp | 6 +++--- test/v4l2_device/v4l2_device_test.h | 6 ++++-- 8 files changed, 23 insertions(+), 9 deletions(-) (limited to 'test') diff --git a/test/v4l2_device/buffer_sharing.cpp b/test/v4l2_device/buffer_sharing.cpp index 09695239..e63ddff8 100644 --- a/test/v4l2_device/buffer_sharing.cpp +++ b/test/v4l2_device/buffer_sharing.cpp @@ -23,9 +23,8 @@ class BufferSharingTest : public V4L2DeviceTest { public: BufferSharingTest() - : output_(nullptr), framesCaptured_(0), framesOutput_(0) - { - } + : V4L2DeviceTest("vivid", "vivid-000-vid-cap"), + output_(nullptr), framesCaptured_(0), framesOutput_(0) {} protected: int init() diff --git a/test/v4l2_device/capture_async.cpp b/test/v4l2_device/capture_async.cpp index 2a41b11e..fd428ff9 100644 --- a/test/v4l2_device/capture_async.cpp +++ b/test/v4l2_device/capture_async.cpp @@ -18,7 +18,7 @@ class CaptureAsyncTest : public V4L2DeviceTest { public: CaptureAsyncTest() - : frames(0){}; + : V4L2DeviceTest("vivid", "vivid-000-vid-cap"), frames(0) {} void receiveBuffer(Buffer *buffer) { diff --git a/test/v4l2_device/double_open.cpp b/test/v4l2_device/double_open.cpp index 7ec80a60..b402de04 100644 --- a/test/v4l2_device/double_open.cpp +++ b/test/v4l2_device/double_open.cpp @@ -13,6 +13,9 @@ namespace { class DoubleOpen : public V4L2DeviceTest { +public: + DoubleOpen() + : V4L2DeviceTest("vivid", "vivid-000-vid-cap") {} protected: int run() { diff --git a/test/v4l2_device/formats.cpp b/test/v4l2_device/formats.cpp index 72676c9d..3ac47f5c 100644 --- a/test/v4l2_device/formats.cpp +++ b/test/v4l2_device/formats.cpp @@ -17,6 +17,9 @@ using namespace libcamera; class Format : public V4L2DeviceTest { +public: + Format() + : V4L2DeviceTest("vivid", "vivid-000-vid-cap") {} protected: int run() { diff --git a/test/v4l2_device/request_buffers.cpp b/test/v4l2_device/request_buffers.cpp index 938d4f85..794b083e 100644 --- a/test/v4l2_device/request_buffers.cpp +++ b/test/v4l2_device/request_buffers.cpp @@ -9,6 +9,10 @@ class RequestBuffersTest : public V4L2DeviceTest { +public: + RequestBuffersTest() + : V4L2DeviceTest("vivid", "vivid-000-vid-cap") {} + protected: int run() { diff --git a/test/v4l2_device/stream_on_off.cpp b/test/v4l2_device/stream_on_off.cpp index ea1b3f5b..4902d5fd 100644 --- a/test/v4l2_device/stream_on_off.cpp +++ b/test/v4l2_device/stream_on_off.cpp @@ -9,6 +9,9 @@ class StreamOnStreamOffTest : public V4L2DeviceTest { +public: + StreamOnStreamOffTest() + : V4L2DeviceTest("vivid", "vivid-000-vid-cap") {} protected: int run() { diff --git a/test/v4l2_device/v4l2_device_test.cpp b/test/v4l2_device/v4l2_device_test.cpp index 833038d5..ee5a8e00 100644 --- a/test/v4l2_device/v4l2_device_test.cpp +++ b/test/v4l2_device/v4l2_device_test.cpp @@ -39,14 +39,14 @@ int V4L2DeviceTest::init() return TestFail; } - DeviceMatch dm("vivid"); - dm.add("vivid-000-vid-cap"); + DeviceMatch dm(driver_); + dm.add(entity_); media_ = enumerator_->search(dm); if (!media_) return TestSkip; - MediaEntity *entity = media_->getEntityByName("vivid-000-vid-cap"); + MediaEntity *entity = media_->getEntityByName(entity_); if (!entity) return TestSkip; diff --git a/test/v4l2_device/v4l2_device_test.h b/test/v4l2_device/v4l2_device_test.h index c476d3c0..651c005f 100644 --- a/test/v4l2_device/v4l2_device_test.h +++ b/test/v4l2_device/v4l2_device_test.h @@ -22,8 +22,8 @@ using namespace libcamera; class V4L2DeviceTest : public Test { public: - V4L2DeviceTest() - : capture_(nullptr) + V4L2DeviceTest(const char *driver, const char *entity) + : driver_(driver), entity_(entity), capture_(nullptr) { } @@ -31,6 +31,8 @@ protected: int init(); void cleanup(); + std::string driver_; + std::string entity_; std::unique_ptr enumerator_; std::shared_ptr media_; V4L2Device *capture_; -- cgit v1.2.1