Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1456)

Unified Diff: media/capture/video/chromeos/mock_video_capture_client.cc

Issue 2837273004: media: add video capture device for ARC++ camera HAL v3 (Closed)
Patch Set: RELAND: media: add video capture device for ARC++ camera HAL v3 Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/capture/video/chromeos/mock_video_capture_client.cc
diff --git a/media/capture/video/chromeos/mock_video_capture_client.cc b/media/capture/video/chromeos/mock_video_capture_client.cc
new file mode 100644
index 0000000000000000000000000000000000000000..dcda5aa59c5092e727609629e3dbc8c005ae7783
--- /dev/null
+++ b/media/capture/video/chromeos/mock_video_capture_client.cc
@@ -0,0 +1,97 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "media/capture/video/chromeos/mock_video_capture_client.h"
+
+#include <string>
+#include <utility>
+
+using testing::_;
+using testing::Invoke;
+
+namespace media {
+namespace unittest_internal {
+
+MockVideoCaptureClient::MockVideoCaptureClient() {
+ ON_CALL(*this, OnError(_, _))
+ .WillByDefault(Invoke(this, &MockVideoCaptureClient::DumpError));
+}
+
+MockVideoCaptureClient::~MockVideoCaptureClient() {
+ if (quit_cb_) {
+ std::move(quit_cb_).Run();
+ }
+}
+
+void MockVideoCaptureClient::SetFrameCb(base::OnceClosure frame_cb) {
+ frame_cb_ = std::move(frame_cb);
+}
+
+void MockVideoCaptureClient::SetQuitCb(base::OnceClosure quit_cb) {
+ quit_cb_ = std::move(quit_cb);
+}
+
+void MockVideoCaptureClient::DumpError(
+ const tracked_objects::Location& location,
+ const std::string& message) {
+ DPLOG(ERROR) << location.ToString() << " " << message;
+}
+
+void MockVideoCaptureClient::OnIncomingCapturedData(
+ const uint8_t* data,
+ int length,
+ const VideoCaptureFormat& format,
+ int rotation,
+ base::TimeTicks reference_time,
+ base::TimeDelta timestamp,
+ int frame_feedback_id) {
+ ASSERT_GT(length, 0);
+ ASSERT_TRUE(data);
+ if (frame_cb_) {
+ std::move(frame_cb_).Run();
+ }
+}
+
+// Trampoline methods to workaround GMOCK problems with std::unique_ptr<>.
+VideoCaptureDevice::Client::Buffer MockVideoCaptureClient::ReserveOutputBuffer(
+ const gfx::Size& dimensions,
+ media::VideoPixelFormat format,
+ media::VideoPixelStorage storage,
+ int frame_feedback_id) {
+ DoReserveOutputBuffer();
+ NOTREACHED() << "This should never be called";
+ return Buffer();
+}
+
+void MockVideoCaptureClient::OnIncomingCapturedBuffer(
+ Buffer buffer,
+ const VideoCaptureFormat& format,
+ base::TimeTicks reference_time,
+ base::TimeDelta timestamp) {
+ DoOnIncomingCapturedBuffer();
+}
+
+void MockVideoCaptureClient::OnIncomingCapturedBufferExt(
+ Buffer buffer,
+ const VideoCaptureFormat& format,
+ base::TimeTicks reference_time,
+ base::TimeDelta timestamp,
+ gfx::Rect visible_rect,
+ const VideoFrameMetadata& additional_metadata) {
+ DoOnIncomingCapturedVideoFrame();
+}
+
+VideoCaptureDevice::Client::Buffer
+MockVideoCaptureClient::ResurrectLastOutputBuffer(
+ const gfx::Size& dimensions,
+ media::VideoPixelFormat format,
+ media::VideoPixelStorage storage,
+ int frame_feedback_id) {
+ DoResurrectLastOutputBuffer();
+ NOTREACHED() << "This should never be called";
+ return Buffer();
+}
+
+} // namespace unittest_internal
+} // namespace media
« no previous file with comments | « media/capture/video/chromeos/mock_video_capture_client.h ('k') | media/capture/video/chromeos/mojo/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698