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

Unified Diff: content/browser/renderer_host/media/video_capture_controller_unittest.cc

Issue 2738763002: [Mojo Video Capture] Introduce abstraction BuildableVideoCaptureDevice (Closed)
Patch Set: Incorporated miu@'s suggestions from PatchSet 2 Created 3 years, 9 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: content/browser/renderer_host/media/video_capture_controller_unittest.cc
diff --git a/content/browser/renderer_host/media/video_capture_controller_unittest.cc b/content/browser/renderer_host/media/video_capture_controller_unittest.cc
index 74254ae11bc43014732bf4c7651e8728eb9ac390..5f79fd1418ba6e664c69111b181c300c7fd64ef5 100644
--- a/content/browser/renderer_host/media/video_capture_controller_unittest.cc
+++ b/content/browser/renderer_host/media/video_capture_controller_unittest.cc
@@ -121,6 +121,34 @@ class MockConsumerFeedbackObserver
void(int frame_feedback_id, double utilization));
};
+class MockBuildableVideoCaptureDevice : public BuildableVideoCaptureDevice {
+ public:
+ void CreateAndStartDeviceAsync(
+ VideoCaptureController* entry,
+ VideoCaptureController* controller,
+ const media::VideoCaptureParams& params,
+ BuildableDeviceCallbacks* callbacks,
+ std::unique_ptr<Ownership> context_reference) override {}
+ void ReleaseDeviceAsync(
+ VideoCaptureController* controller,
+ std::unique_ptr<Ownership> context_reference) override {}
+ bool IsDeviceAlive() const override { return false; }
+ void GetPhotoCapabilities(
+ media::VideoCaptureDevice::GetPhotoCapabilitiesCallback callback)
+ const override {}
+ void SetPhotoOptions(
+ media::mojom::PhotoSettingsPtr settings,
+ media::VideoCaptureDevice::SetPhotoOptionsCallback callback) override {}
+ void TakePhoto(
+ media::VideoCaptureDevice::TakePhotoCallback callback) override {}
+ void MaybeSuspendDevice() override {}
+ void ResumeDevice() override {}
+ void RequestRefreshFrame() override {}
+ void SetDesktopCaptureWindowIdAsync(
+ gfx::NativeViewId window_id,
+ std::unique_ptr<Ownership> context_reference) override {}
+};
+
// Test fixture for testing a unit consisting of an instance of
// VideoCaptureController connected to an instance of VideoCaptureDeviceClient,
// an instance of VideoCaptureBufferPoolImpl, as well as related threading glue
@@ -139,7 +167,14 @@ class VideoCaptureControllerTest
static const int kPoolSize = 3;
void SetUp() override {
- controller_.reset(new VideoCaptureController());
+ const std::string arbitrary_device_id = "arbitrary_device_id";
+ const MediaStreamType arbitrary_stream_type =
+ content::MEDIA_DEVICE_VIDEO_CAPTURE;
+ const media::VideoCaptureParams arbitrary_params;
+ auto buildable_device = base::MakeUnique<MockBuildableVideoCaptureDevice>();
+ controller_ = new VideoCaptureController(
+ arbitrary_device_id, arbitrary_stream_type, arbitrary_params,
+ std::move(buildable_device));
InitializeNewDeviceClientAndBufferPoolInstances();
auto consumer_feedback_observer =
base::MakeUnique<MockConsumerFeedbackObserver>();
@@ -186,7 +221,7 @@ class VideoCaptureControllerTest
scoped_refptr<media::VideoCaptureBufferPool> buffer_pool_;
std::unique_ptr<MockVideoCaptureControllerEventHandler> client_a_;
std::unique_ptr<MockVideoCaptureControllerEventHandler> client_b_;
- std::unique_ptr<VideoCaptureController> controller_;
+ scoped_refptr<VideoCaptureController> controller_;
std::unique_ptr<media::VideoCaptureDevice::Client> device_client_;
MockConsumerFeedbackObserver* mock_consumer_feedback_observer_;
const float arbitrary_frame_rate_ = 10.0f;

Powered by Google App Engine
This is Rietveld 408576698