OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "media/capture/video/video_capture_device.h" | 5 #include "media/capture/video/video_capture_device.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
65 #define MAYBE_AllocateBadSize DISABLED_AllocateBadSize | 65 #define MAYBE_AllocateBadSize DISABLED_AllocateBadSize |
66 #define MAYBE_CaptureMjpeg CaptureMjpeg | 66 #define MAYBE_CaptureMjpeg CaptureMjpeg |
67 #define MAYBE_TakePhoto TakePhoto | 67 #define MAYBE_TakePhoto TakePhoto |
68 #else | 68 #else |
69 #define MAYBE_AllocateBadSize AllocateBadSize | 69 #define MAYBE_AllocateBadSize AllocateBadSize |
70 #define MAYBE_CaptureMjpeg CaptureMjpeg | 70 #define MAYBE_CaptureMjpeg CaptureMjpeg |
71 #define MAYBE_TakePhoto DISABLED_TakePhoto | 71 #define MAYBE_TakePhoto DISABLED_TakePhoto |
72 #endif | 72 #endif |
73 | 73 |
74 using ::testing::_; | 74 using ::testing::_; |
75 using ::testing::Invoke; | |
75 using ::testing::SaveArg; | 76 using ::testing::SaveArg; |
77 using ::testing::WithArgs; | |
76 | 78 |
77 namespace media { | 79 namespace media { |
78 namespace { | 80 namespace { |
79 | 81 |
82 void DumpError(const tracked_objects::Location& location, | |
83 const std::string& message) { | |
84 DPLOG(ERROR) << location.ToString() << " " << message; | |
85 } | |
86 | |
80 class MockVideoCaptureClient : public VideoCaptureDevice::Client { | 87 class MockVideoCaptureClient : public VideoCaptureDevice::Client { |
81 public: | 88 public: |
82 MOCK_METHOD0(DoReserveOutputBuffer, void(void)); | 89 MOCK_METHOD0(DoReserveOutputBuffer, void(void)); |
83 MOCK_METHOD0(DoOnIncomingCapturedBuffer, void(void)); | 90 MOCK_METHOD0(DoOnIncomingCapturedBuffer, void(void)); |
84 MOCK_METHOD0(DoOnIncomingCapturedVideoFrame, void(void)); | 91 MOCK_METHOD0(DoOnIncomingCapturedVideoFrame, void(void)); |
85 MOCK_METHOD0(DoResurrectLastOutputBuffer, void(void)); | 92 MOCK_METHOD0(DoResurrectLastOutputBuffer, void(void)); |
86 MOCK_METHOD2(OnError, | 93 MOCK_METHOD2(OnError, |
87 void(const tracked_objects::Location& from_here, | 94 void(const tracked_objects::Location& from_here, |
88 const std::string& reason)); | 95 const std::string& reason)); |
89 MOCK_CONST_METHOD0(GetBufferPoolUtilization, double(void)); | 96 MOCK_CONST_METHOD0(GetBufferPoolUtilization, double(void)); |
90 | 97 |
91 explicit MockVideoCaptureClient( | 98 explicit MockVideoCaptureClient( |
92 base::Callback<void(const VideoCaptureFormat&)> frame_cb) | 99 base::Callback<void(const VideoCaptureFormat&)> frame_cb) |
93 : main_thread_(base::ThreadTaskRunnerHandle::Get()), | 100 : main_thread_(base::ThreadTaskRunnerHandle::Get()), frame_cb_(frame_cb) { |
94 frame_cb_(frame_cb) {} | 101 ON_CALL(*this, OnError(_, _)) |
102 .WillByDefault(WithArgs<0, 1>(Invoke(DumpError))); | |
chfremer
2016/09/22 17:44:18
Is the WithArgs<0, 1> really needed? It seems the
mcasas
2016/09/22 17:58:36
Ooops, isn't needed indeed, it's a leftover
from a
| |
103 } | |
95 | 104 |
96 void OnIncomingCapturedData(const uint8_t* data, | 105 void OnIncomingCapturedData(const uint8_t* data, |
97 int length, | 106 int length, |
98 const VideoCaptureFormat& format, | 107 const VideoCaptureFormat& format, |
99 int rotation, | 108 int rotation, |
100 base::TimeTicks reference_time, | 109 base::TimeTicks reference_time, |
101 base::TimeDelta timestamp) override { | 110 base::TimeDelta timestamp) override { |
102 ASSERT_GT(length, 0); | 111 ASSERT_GT(length, 0); |
103 ASSERT_TRUE(data); | 112 ASSERT_TRUE(data); |
104 main_thread_->PostTask(FROM_HERE, base::Bind(frame_cb_, format)); | 113 main_thread_->PostTask(FROM_HERE, base::Bind(frame_cb_, format)); |
(...skipping 443 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
548 &MockImageCaptureClient::OnTakePhotoFailure, image_capture_client_))); | 557 &MockImageCaptureClient::OnTakePhotoFailure, image_capture_client_))); |
549 | 558 |
550 EXPECT_CALL(*image_capture_client_.get(), OnCorrectPhotoTaken()).Times(1); | 559 EXPECT_CALL(*image_capture_client_.get(), OnCorrectPhotoTaken()).Times(1); |
551 device->TakePhoto(std::move(scoped_callback)); | 560 device->TakePhoto(std::move(scoped_callback)); |
552 WaitForCapturedFrame(); | 561 WaitForCapturedFrame(); |
553 | 562 |
554 device->StopAndDeAllocate(); | 563 device->StopAndDeAllocate(); |
555 } | 564 } |
556 | 565 |
557 }; // namespace media | 566 }; // namespace media |
OLD | NEW |