summaryrefslogtreecommitdiff
path: root/test/v4l2_subdevice
diff options
context:
space:
mode:
Diffstat (limited to 'test/v4l2_subdevice')
-rw-r--r--test/v4l2_subdevice/list_formats.cpp27
-rw-r--r--test/v4l2_subdevice/meson.build14
-rw-r--r--test/v4l2_subdevice/test_formats.cpp7
-rw-r--r--test/v4l2_subdevice/v4l2_subdevice_test.cpp9
-rw-r--r--test/v4l2_subdevice/v4l2_subdevice_test.h24
5 files changed, 41 insertions, 40 deletions
diff --git a/test/v4l2_subdevice/list_formats.cpp b/test/v4l2_subdevice/list_formats.cpp
index 067dc5ed..9cbd7b94 100644
--- a/test/v4l2_subdevice/list_formats.cpp
+++ b/test/v4l2_subdevice/list_formats.cpp
@@ -5,13 +5,15 @@
* libcamera V4L2 Subdevice format handling test
*/
-#include <iomanip>
#include <iostream>
#include <vector>
#include <libcamera/geometry.h>
-#include "v4l2_subdevice.h"
+#include <libcamera/base/utils.h>
+
+#include "libcamera/internal/v4l2_subdevice.h"
+
#include "v4l2_subdevice_test.h"
using namespace std;
@@ -35,8 +37,7 @@ void ListFormatsTest::printFormats(unsigned int pad,
{
cout << "Enumerate formats on pad " << pad << endl;
for (const SizeRange &size : sizes) {
- cout << " mbus code: 0x" << setfill('0') << setw(4)
- << hex << code << endl;
+ cout << " mbus code: " << utils::hex(code, 4) << endl;
cout << " min width: " << dec << size.min.width << endl;
cout << " min height: " << dec << size.min.height << endl;
cout << " max width: " << dec << size.max.width << endl;
@@ -47,29 +48,29 @@ void ListFormatsTest::printFormats(unsigned int pad,
int ListFormatsTest::run()
{
/* List all formats available on existing "Scaler" pads. */
- ImageFormats formats;
+ V4L2Subdevice::Formats formats;
formats = scaler_->formats(0);
- if (formats.isEmpty()) {
+ if (formats.empty()) {
cerr << "Failed to list formats on pad 0 of subdevice "
<< scaler_->entity()->name() << endl;
return TestFail;
}
- for (unsigned int code : formats.formats())
- printFormats(0, code, formats.sizes(code));
+ for (unsigned int code : utils::map_keys(formats))
+ printFormats(0, code, formats[code]);
formats = scaler_->formats(1);
- if (formats.isEmpty()) {
+ if (formats.empty()) {
cerr << "Failed to list formats on pad 1 of subdevice "
<< scaler_->entity()->name() << endl;
return TestFail;
}
- for (unsigned int code : formats.formats())
- printFormats(1, code, formats.sizes(code));
+ for (unsigned int code : utils::map_keys(formats))
+ printFormats(1, code, formats[code]);
/* List format on a non-existing pad, format vector shall be empty. */
formats = scaler_->formats(2);
- if (!formats.isEmpty()) {
+ if (!formats.empty()) {
cerr << "Listing formats on non-existing pad 2 of subdevice "
<< scaler_->entity()->name()
<< " should return an empty format list" << endl;
@@ -79,4 +80,4 @@ int ListFormatsTest::run()
return TestPass;
}
-TEST_REGISTER(ListFormatsTest);
+TEST_REGISTER(ListFormatsTest)
diff --git a/test/v4l2_subdevice/meson.build b/test/v4l2_subdevice/meson.build
index 0521984b..277f29bb 100644
--- a/test/v4l2_subdevice/meson.build
+++ b/test/v4l2_subdevice/meson.build
@@ -1,12 +1,14 @@
+# SPDX-License-Identifier: CC0-1.0
+
v4l2_subdevice_tests = [
- [ 'list_formats', 'list_formats.cpp'],
- [ 'test_formats', 'test_formats.cpp'],
+ {'name': 'list_formats', 'sources': ['list_formats.cpp']},
+ {'name': 'test_formats', 'sources': ['test_formats.cpp']},
]
-foreach t : v4l2_subdevice_tests
- exe = executable(t[0], [t[1], 'v4l2_subdevice_test.cpp'],
- dependencies : libcamera_dep,
+foreach test : v4l2_subdevice_tests
+ exe = executable(test['name'], test['sources'], 'v4l2_subdevice_test.cpp',
+ dependencies : libcamera_private,
link_with : test_libraries,
include_directories : test_includes_internal)
- test(t[0], exe, suite : 'v4l2_subdevice', is_parallel : false)
+ test(test['name'], exe, suite : 'v4l2_subdevice', is_parallel : false)
endforeach
diff --git a/test/v4l2_subdevice/test_formats.cpp b/test/v4l2_subdevice/test_formats.cpp
index 5cf5d566..47f979e2 100644
--- a/test/v4l2_subdevice/test_formats.cpp
+++ b/test/v4l2_subdevice/test_formats.cpp
@@ -8,7 +8,8 @@
#include <iostream>
#include <limits.h>
-#include "v4l2_subdevice.h"
+#include "libcamera/internal/v4l2_subdevice.h"
+
#include "v4l2_subdevice_test.h"
using namespace std;
@@ -66,7 +67,7 @@ int FormatHandlingTest::run()
return TestFail;
}
- if (format.size.width == 0 || format.size.height == 0) {
+ if (format.size.isNull()) {
cerr << "Failed to update image format" << endl;
return TestFail;
}
@@ -74,4 +75,4 @@ int FormatHandlingTest::run()
return TestPass;
}
-TEST_REGISTER(FormatHandlingTest);
+TEST_REGISTER(FormatHandlingTest)
diff --git a/test/v4l2_subdevice/v4l2_subdevice_test.cpp b/test/v4l2_subdevice/v4l2_subdevice_test.cpp
index 562a638c..c349c9e3 100644
--- a/test/v4l2_subdevice/v4l2_subdevice_test.cpp
+++ b/test/v4l2_subdevice/v4l2_subdevice_test.cpp
@@ -2,16 +2,17 @@
/*
* Copyright (C) 2019, Google Inc.
*
- * v4l2_subdevice_test.cpp - VIMC-based V4L2 subdevice test
+ * VIMC-based V4L2 subdevice test
*/
#include <iostream>
#include <string.h>
#include <sys/stat.h>
-#include "device_enumerator.h"
-#include "media_device.h"
-#include "v4l2_subdevice.h"
+#include "libcamera/internal/device_enumerator.h"
+#include "libcamera/internal/media_device.h"
+#include "libcamera/internal/v4l2_subdevice.h"
+
#include "v4l2_subdevice_test.h"
using namespace std;
diff --git a/test/v4l2_subdevice/v4l2_subdevice_test.h b/test/v4l2_subdevice/v4l2_subdevice_test.h
index 3bce6691..89b78302 100644
--- a/test/v4l2_subdevice/v4l2_subdevice_test.h
+++ b/test/v4l2_subdevice/v4l2_subdevice_test.h
@@ -2,20 +2,18 @@
/*
* Copyright (C) 2019, Google Inc.
*
- * v4l2_subdevice_test.h - VIMC-based V4L2 subdevice test
+ * VIMC-based V4L2 subdevice test
*/
-#ifndef __LIBCAMERA_V4L2_SUBDEVICE_TEST_H__
-#define __LIBCAMERA_V4L2_SUBDEVICE_TEST_H__
+#pragma once
-#include <libcamera/buffer.h>
+#include <libcamera/framebuffer.h>
-#include "device_enumerator.h"
-#include "media_device.h"
-#include "test.h"
-#include "v4l2_subdevice.h"
+#include "libcamera/internal/device_enumerator.h"
+#include "libcamera/internal/media_device.h"
+#include "libcamera/internal/v4l2_subdevice.h"
-using namespace libcamera;
+#include "test.h"
class V4L2SubdeviceTest : public Test
{
@@ -29,9 +27,7 @@ protected:
int init() override;
void cleanup() override;
- std::unique_ptr<DeviceEnumerator> enumerator_;
- std::shared_ptr<MediaDevice> media_;
- V4L2Subdevice *scaler_;
+ std::unique_ptr<libcamera::DeviceEnumerator> enumerator_;
+ std::shared_ptr<libcamera::MediaDevice> media_;
+ libcamera::V4L2Subdevice *scaler_;
};
-
-#endif /* __LIBCAMERA_V4L2_SUBDEVICE_TEST_H__ */