summaryrefslogtreecommitdiff
path: root/test/controls/control_info_map.cpp
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-03-01 22:02:37 +0200
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-03-20 16:47:45 +0200
commit73b7ba9da5fe7b1aec62af091ad36403cd3505c4 (patch)
treebae0d37032c303da9f142d398d585ddc539e38cc /test/controls/control_info_map.cpp
parentcf66c4406bbd66b885090d2ddbe2b72b6fb0492d (diff)
libcamera: controls: Name all ControlInfoMap instance variables infoMap
To prepare for the rename of ControlRange to ControlInfo, rename all the ControlInfoMap instance variables currently named info to infoMap. This will help avoiding namespace clashes. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'test/controls/control_info_map.cpp')
-rw-r--r--test/controls/control_info_map.cpp82
1 files changed, 82 insertions, 0 deletions
diff --git a/test/controls/control_info_map.cpp b/test/controls/control_info_map.cpp
new file mode 100644
index 00000000..eeb702db
--- /dev/null
+++ b/test/controls/control_info_map.cpp
@@ -0,0 +1,82 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Copyright (C) 2019, Google Inc.
+ *
+ * control_info.cpp - ControlInfoMap tests
+ */
+
+#include <iostream>
+
+#include <libcamera/camera.h>
+#include <libcamera/camera_manager.h>
+#include <libcamera/control_ids.h>
+#include <libcamera/controls.h>
+
+#include "camera_controls.h"
+
+#include "camera_test.h"
+#include "test.h"
+
+using namespace std;
+using namespace libcamera;
+
+class ControlInfoMapTest : public CameraTest, public Test
+{
+public:
+ ControlInfoMapTest()
+ : CameraTest("VIMC Sensor B")
+ {
+ }
+
+protected:
+ int init() override
+ {
+ return status_;
+ }
+
+ int run() override
+ {
+ const ControlInfoMap &infoMap = camera_->controls();
+
+ /* Test looking up a valid control by ControlId. */
+ if (infoMap.count(&controls::Brightness) != 1) {
+ cerr << "count() on valid control failed" << endl;
+ return TestFail;
+ }
+
+ if (infoMap.find(&controls::Brightness) == infoMap.end()) {
+ cerr << "find() on valid control failed" << endl;
+ return TestFail;
+ }
+
+ infoMap.at(&controls::Brightness);
+
+ /* Test looking up a valid control by numerical ID. */
+ if (infoMap.count(controls::Brightness.id()) != 1) {
+ cerr << "count() on valid ID failed" << endl;
+ return TestFail;
+ }
+
+ if (infoMap.find(controls::Brightness.id()) == infoMap.end()) {
+ cerr << "find() on valid ID failed" << endl;
+ return TestFail;
+ }
+
+ infoMap.at(controls::Brightness.id());
+
+ /* Test looking up an invalid control by numerical ID. */
+ if (infoMap.count(12345) != 0) {
+ cerr << "count() on invalid ID failed" << endl;
+ return TestFail;
+ }
+
+ if (infoMap.find(12345) != infoMap.end()) {
+ cerr << "find() on invalid ID failed" << endl;
+ return TestFail;
+ }
+
+ return TestPass;
+ }
+};
+
+TEST_REGISTER(ControlInfoMapTest)