libcamera/test
Kieran Bingham 7653021549 libcamera: base: object: Prevent the same signal being connected more than once
Objects are not expected to be connected to the same signal more than
once. Doing so likely indicates a bug in the code, and can be
highlighted in debug builds with an assert that performs a lookup on the
signals_ list.

While it is possible to allow the implementation to let objects connect
to a specific signal multiple times, there are no expected use cases for
this in libcamera and this behaviour is restricted to favour defensive
programming by raising an error when this occurs.

Remove the support in the test framework which uses multiple Signal
connections on the same object, and update the test to use a second
Signal.

Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2022-02-04 10:13:29 +00:00
..
camera test: camera: Fix trivial spelling mistake 2021-11-29 18:12:24 +01:00
controls controls: Add boolean constructors for ControlInfo 2021-08-02 18:07:16 +09:00
gstreamer test: gstreamer: Avoid call to deprecated gst_element_get_request_pad() 2021-12-01 15:42:55 +00:00
ipa libcamera: Drop emitter object pointer from signal arguments 2021-09-02 01:16:45 +03:00
ipc libcamera: ipc_unixsocket: Use UniqueFD for a file descriptor 2021-12-04 23:05:03 +02:00
libtest test: Store path to the test executable in Test class 2021-12-01 08:54:12 +02:00
log test: Replace "/proc/self/exe" with path to test binary 2021-12-01 08:54:24 +02:00
media_device test: Convert to pragma once 2021-11-24 12:19:00 +00:00
pipeline libcamera/base: Validate internal headers as private 2021-06-25 16:11:11 +01:00
process test: Replace "/proc/self/exe" with path to test binary 2021-12-01 08:54:24 +02:00
serialization libcamera: base: Rename FileDescriptor to SharedFD 2021-12-04 23:05:05 +02:00
stream libcamera: rename public libcamera dependency 2021-06-25 16:11:11 +01:00
v4l2_compat test: v4l2_compat: Add --verbose argument 2022-01-17 14:31:32 +02:00
v4l2_subdevice test: Convert to pragma once 2021-11-24 12:19:00 +00:00
v4l2_videodevice test: Convert to pragma once 2021-11-24 12:19:00 +00:00
bayer-format.cpp libcamera: bayer_format: Turn BayerFormat::Packing into scoped enum 2021-11-02 12:08:44 +00:00
byte-stream-buffer.cpp test: byte-stream-buffer: Initialize data array 2021-05-26 10:24:15 +02:00
camera-sensor.cpp libcamera: camera_sensor: Transform CameraSensor::sizes() 2021-08-31 12:26:54 +05:30
delayed_controls.cpp test: delayed_controls: Rename delayed_contols.cpp to delayed_controls.cpp 2021-03-12 14:20:51 +00:00
event-dispatcher.cpp libcamera/base: Move extended base functionality 2021-06-25 16:11:08 +01:00
event-thread.cpp libcamera: Drop emitter object pointer from signal arguments 2021-09-02 01:16:45 +03:00
event.cpp libcamera: Drop emitter object pointer from signal arguments 2021-09-02 01:16:45 +03:00
fence.cpp test: fence: Signal fence once 2021-12-13 19:31:19 +01:00
file.cpp test: Replace "/proc/self/exe" with path to test binary 2021-12-01 08:54:24 +02:00
flags.cpp test: Add tests for the Flags class 2021-08-03 10:55:21 +03:00
geometry.cpp libcamera: geometry: Add Size members to grown or shrink by a margin 2021-10-15 05:05:17 +03:00
hotplug-cameras.cpp libcamera/base: Move File to base library 2021-06-25 16:11:10 +01:00
mapped-buffer.cpp test: Remove using namespace in header files 2021-10-15 05:05:43 +03:00
meson.build test: Ensure CameraTest tests are not run in parallel 2022-01-19 11:09:35 +00:00
message.cpp test: message: Test recursive Thread::dispatchMessages() calls 2021-07-11 17:41:59 +03:00
object-delete.cpp libcamera/base: Move extended base functionality 2021-06-25 16:11:08 +01:00
object-invoke.cpp libcamera/base: Move extended base functionality 2021-06-25 16:11:08 +01:00
object.cpp libcamera/base: Move extended base functionality 2021-06-25 16:11:08 +01:00
pixel-format.cpp libcamera/base: Move utils to the base library 2021-06-25 16:11:02 +01:00
public-api.cpp test: Ensure LIBCAMERA_BASE_PRIVATE isn't public 2021-06-25 16:11:11 +01:00
shared-fd.cpp libcamera: base: shared_fd: Rename fd() to get() 2021-12-04 23:05:07 +02:00
signal-threads.cpp libcamera/base: Move extended base functionality 2021-06-25 16:11:08 +01:00
signal.cpp libcamera: base: object: Prevent the same signal being connected more than once 2022-02-04 10:13:29 +00:00
span.cpp libcamera/base: Move span to base library 2021-06-25 16:11:11 +01:00
threads.cpp libcamera/base: Move extended base functionality 2021-06-25 16:11:08 +01:00
timer-thread.cpp libcamera: Drop emitter object pointer from signal arguments 2021-09-02 01:16:45 +03:00
timer.cpp libcamera: Drop emitter object pointer from signal arguments 2021-09-02 01:16:45 +03:00
unique-fd.cpp test: Add UniqueFD test 2021-12-03 19:20:41 +02:00
utils.cpp libcamera: base: utils: Use size_t for index in utils::enumerate() 2021-09-07 19:17:37 +03:00