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

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

Issue 2634263002: Pass camera facing info to audio client (Closed)
Patch Set: Moved to chrome_browser_main_chromeos.cc Created 3 years, 10 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_manager_unittest.cc
diff --git a/content/browser/renderer_host/media/video_capture_manager_unittest.cc b/content/browser/renderer_host/media/video_capture_manager_unittest.cc
index 8525a344f26038d286d27fa8a64e41416d3d8026..e5e8e8218314e6239ebc3898afedd02b0e4dac4e 100644
--- a/content/browser/renderer_host/media/video_capture_manager_unittest.cc
+++ b/content/browser/renderer_host/media/video_capture_manager_unittest.cc
@@ -94,6 +94,9 @@ class WrappedDeviceFactory : public media::FakeVideoCaptureDeviceFactory {
DISALLOW_COPY_AND_ASSIGN(WrappedDevice);
};
+ static const media::VideoFacingMode DEFAULT_FACING =
+ media::VideoFacingMode::MEDIA_VIDEO_FACING_USER;
+
WrappedDeviceFactory() : FakeVideoCaptureDeviceFactory() {}
~WrappedDeviceFactory() final {}
@@ -103,6 +106,16 @@ class WrappedDeviceFactory : public media::FakeVideoCaptureDeviceFactory {
FakeVideoCaptureDeviceFactory::CreateDevice(device_descriptor), this);
}
+ void GetDeviceDescriptors(
+ media::VideoCaptureDeviceDescriptors* device_descriptors) override {
+ media::FakeVideoCaptureDeviceFactory::GetDeviceDescriptors(
+ device_descriptors);
+ for (auto& descriptor : *device_descriptors) {
+ if (descriptor.facing == media::VideoFacingMode::MEDIA_VIDEO_FACING_NONE)
+ descriptor.facing = DEFAULT_FACING;
+ }
+ }
+
MOCK_METHOD0(WillSuspendDevice, void());
MOCK_METHOD0(WillResumeDevice, void());
@@ -150,6 +163,13 @@ class MockFrameObserver : public VideoCaptureControllerEventHandler {
void OnGotControllerCallback(VideoCaptureControllerID) {}
};
+// Input argument for testing AddVideoCaptureObserver().
+class MockVideoCaptureObserver : public media::VideoCaptureObserver {
+ public:
+ MOCK_METHOD1(OnVideoCaptureStarted, void(media::VideoFacingMode));
+ MOCK_METHOD1(OnVideoCaptureStopped, void(media::VideoFacingMode));
+};
+
} // namespace
// Test class
@@ -331,6 +351,27 @@ TEST_F(VideoCaptureManagerTest, CreateAndAbort) {
vcm_->UnregisterListener();
}
+TEST_F(VideoCaptureManagerTest, AddObserver) {
+ InSequence s;
+ MockVideoCaptureObserver observer;
+ vcm_->AddVideoCaptureObserver(&observer);
+
+ EXPECT_CALL(observer,
+ OnVideoCaptureStarted(WrappedDeviceFactory::DEFAULT_FACING));
+ EXPECT_CALL(observer,
+ OnVideoCaptureStopped(WrappedDeviceFactory::DEFAULT_FACING));
+
+ int video_session_id = vcm_->Open(devices_.front());
+ VideoCaptureControllerID client_id = StartClient(video_session_id, true);
+
+ StopClient(client_id);
+ vcm_->Close(video_session_id);
+
+ // Wait to check callbacks before removing the listener.
+ base::RunLoop().RunUntilIdle();
+ vcm_->UnregisterListener();
+}
+
// Open the same device twice.
TEST_F(VideoCaptureManagerTest, OpenTwice) {
InSequence s;
« no previous file with comments | « content/browser/renderer_host/media/video_capture_manager.cc ('k') | content/common/media/media_stream_messages.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698