summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNĂ­colas F. R. A. Prado <nfraprado@collabora.com>2022-12-28 16:30:02 -0600
committerJacopo Mondi <jacopo.mondi@ideasonboard.com>2023-12-29 11:33:30 +0100
commit5a76a387b5af8444fb284a3a7d3cb4e612b3ab5b (patch)
tree58c6a6697a8dcace6717b32256494f134b050bb0
parent55f929c520addbc2e1b8a77614ea7739e418976d (diff)
apps: lc-compliance: Check that requests complete successfully
When a request fails to queue it is completed but with its status set to RequestCancelled. Add a check in the requestComplete callback to make sure that the request was completed successfully. For the SimpleCaptureUnbalanced test we need to do this check only if the capture isn't over yet, otherwise the few extra requests that get cancelled at the end, which is the normal behavior, will make the test fail. Signed-off-by: NĂ­colas F. R. A. Prado <nfraprado@collabora.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com> Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
-rw-r--r--src/apps/lc-compliance/simple_capture.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/apps/lc-compliance/simple_capture.cpp b/src/apps/lc-compliance/simple_capture.cpp
index cf4d7cf3..e22a339c 100644
--- a/src/apps/lc-compliance/simple_capture.cpp
+++ b/src/apps/lc-compliance/simple_capture.cpp
@@ -127,6 +127,9 @@ int SimpleCaptureBalanced::queueRequest(Request *request)
void SimpleCaptureBalanced::requestComplete(Request *request)
{
+ EXPECT_EQ(request->status(), Request::Status::RequestComplete)
+ << "Request didn't complete successfully";
+
captureCount_++;
if (captureCount_ >= captureLimit_) {
loop_->exit(0);
@@ -184,6 +187,9 @@ void SimpleCaptureUnbalanced::requestComplete(Request *request)
return;
}
+ EXPECT_EQ(request->status(), Request::Status::RequestComplete)
+ << "Request didn't complete successfully";
+
request->reuse(Request::ReuseBuffers);
if (camera_->queueRequest(request))
loop_->exit(-EINVAL);