summaryrefslogtreecommitdiff
path: root/test/v4l2_videodevice/v4l2_m2mdevice.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/v4l2_videodevice/v4l2_m2mdevice.cpp')
-rw-r--r--test/v4l2_videodevice/v4l2_m2mdevice.cpp29
1 files changed, 18 insertions, 11 deletions
diff --git a/test/v4l2_videodevice/v4l2_m2mdevice.cpp b/test/v4l2_videodevice/v4l2_m2mdevice.cpp
index d20e5dfc..c45f581a 100644
--- a/test/v4l2_videodevice/v4l2_m2mdevice.cpp
+++ b/test/v4l2_videodevice/v4l2_m2mdevice.cpp
@@ -7,19 +7,21 @@
#include <iostream>
-#include <libcamera/buffer.h>
-#include <libcamera/event_dispatcher.h>
-#include <libcamera/timer.h>
+#include <libcamera/framebuffer.h>
-#include "device_enumerator.h"
-#include "media_device.h"
-#include "thread.h"
-#include "v4l2_videodevice.h"
+#include <libcamera/base/event_dispatcher.h>
+#include <libcamera/base/thread.h>
+#include <libcamera/base/timer.h>
+
+#include "libcamera/internal/device_enumerator.h"
+#include "libcamera/internal/media_device.h"
+#include "libcamera/internal/v4l2_videodevice.h"
#include "test.h"
-using namespace std;
using namespace libcamera;
+using namespace std;
+using namespace std::chrono_literals;
class V4L2M2MDeviceTest : public Test
{
@@ -93,6 +95,11 @@ protected:
V4L2VideoDevice *capture = vim2m_->capture();
V4L2VideoDevice *output = vim2m_->output();
+ if (capture->controls().empty() || output->controls().empty()) {
+ cerr << "VIM2M device has no control" << endl;
+ return TestFail;
+ }
+
V4L2DeviceFormat format = {};
if (capture->getFormat(&format)) {
cerr << "Failed to get capture format" << endl;
@@ -154,7 +161,7 @@ protected:
}
Timer timeout;
- timeout.start(5000);
+ timeout.start(5000ms);
while (timeout.isRunning()) {
dispatcher->processEvents();
if (captureFrames_ > 30)
@@ -187,7 +194,7 @@ protected:
void cleanup()
{
delete vim2m_;
- };
+ }
private:
std::unique_ptr<DeviceEnumerator> enumerator_;
@@ -201,4 +208,4 @@ private:
unsigned int captureFrames_;
};
-TEST_REGISTER(V4L2M2MDeviceTest);
+TEST_REGISTER(V4L2M2MDeviceTest)