summaryrefslogtreecommitdiff
path: root/test/timer-thread.cpp
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2024-01-19 03:21:15 +0200
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2024-01-25 02:39:15 +0200
commit4f76beae8612f02e086e96d79447b7e8984c8821 (patch)
tree2efa84b78cf84898f9d593c32641075a6038dfb0 /test/timer-thread.cpp
parentdfe81fd702c96bfb3f7c5c46f1493d54dfcd1798 (diff)
test: timer-thread: Move timer start from wrong thread to separate test
Starting a timer from the wrong thread is expected to fail, and we test this in the timer-thread unit test. This is however not something that a caller is allowed to do, and libcamera will get assertion failures to catch this invalid usage. The unit test will then fail. To prepare for this, split the unit test in two, with a test that is expected by meson to succeed, and one that is expected to fail. The assertion will then cause an expected failure, making the test suite succeed. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Milan Zamazal <mzamazal@redhat.com>
Diffstat (limited to 'test/timer-thread.cpp')
-rw-r--r--test/timer-thread.cpp22
1 files changed, 0 insertions, 22 deletions
diff --git a/test/timer-thread.cpp b/test/timer-thread.cpp
index 0bcd0d8c..4caf4e33 100644
--- a/test/timer-thread.cpp
+++ b/test/timer-thread.cpp
@@ -29,12 +29,6 @@ public:
timer_.start(100ms);
}
- void restart()
- {
- timeout_ = false;
- timer_.start(100ms);
- }
-
bool timeout() const
{
return timeout_;
@@ -74,22 +68,6 @@ protected:
return TestFail;
}
- /*
- * Test that starting the timer from another thread fails. We
- * need to interrupt the event dispatcher to make sure we don't
- * succeed simply because the event dispatcher hasn't noticed
- * the timer restart.
- */
- timeout_.restart();
- thread_.eventDispatcher()->interrupt();
-
- this_thread::sleep_for(chrono::milliseconds(200));
-
- if (timeout_.timeout()) {
- cout << "Timer restart test failed" << endl;
- return TestFail;
- }
-
return TestPass;
}