| 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 6bae8bdf65fd58bb3e505dd600ce406f986d08ae..8599924b0522b212fe5abe6b525122a28d11a433 100644
|
| --- a/content/browser/renderer_host/media/video_capture_manager_unittest.cc
|
| +++ b/content/browser/renderer_host/media/video_capture_manager_unittest.cc
|
| @@ -38,8 +38,7 @@ class MockMediaStreamProviderListener : public MediaStreamProviderListener {
|
| MOCK_METHOD2(Closed, void(MediaStreamType, int));
|
| MOCK_METHOD2(DevicesEnumerated, void(MediaStreamType,
|
| const StreamDeviceInfoArray&));
|
| - MOCK_METHOD3(Error, void(MediaStreamType, int,
|
| - MediaStreamProviderError));
|
| + MOCK_METHOD2(Aborted, void(MediaStreamType, int));
|
| }; // class MockMediaStreamProviderListener
|
|
|
| // Needed as an input argument to StartCaptureForClient().
|
| @@ -131,7 +130,7 @@ class VideoCaptureManagerTest : public testing::Test {
|
| void StopClient(VideoCaptureControllerID client_id) {
|
| ASSERT_TRUE(1 == controllers_.count(client_id));
|
| vcm_->StopCaptureForClient(controllers_[client_id], client_id,
|
| - frame_observer_.get());
|
| + frame_observer_.get(), false);
|
| controllers_.erase(client_id);
|
| }
|
|
|
| @@ -176,6 +175,35 @@ TEST_F(VideoCaptureManagerTest, CreateAndClose) {
|
| vcm_->Unregister();
|
| }
|
|
|
| +// Try to open, start, and abort a device.
|
| +TEST_F(VideoCaptureManagerTest, CreateAndAbort) {
|
| + StreamDeviceInfoArray devices;
|
| +
|
| + InSequence s;
|
| + EXPECT_CALL(*listener_, DevicesEnumerated(MEDIA_DEVICE_VIDEO_CAPTURE, _))
|
| + .WillOnce(SaveArg<1>(&devices));
|
| + EXPECT_CALL(*listener_, Opened(MEDIA_DEVICE_VIDEO_CAPTURE, _));
|
| + EXPECT_CALL(*listener_, Aborted(MEDIA_DEVICE_VIDEO_CAPTURE, _));
|
| +
|
| + vcm_->EnumerateDevices(MEDIA_DEVICE_VIDEO_CAPTURE);
|
| +
|
| + // Wait to get device callback.
|
| + message_loop_->RunUntilIdle();
|
| +
|
| + int video_session_id = vcm_->Open(devices.front());
|
| + VideoCaptureControllerID client_id = StartClient(video_session_id, true);
|
| +
|
| + // Wait for device opened.
|
| + message_loop_->RunUntilIdle();
|
| +
|
| + vcm_->StopCaptureForClient(controllers_[client_id], client_id,
|
| + frame_observer_.get(), true);
|
| +
|
| + // Wait to check callbacks before removing the listener.
|
| + message_loop_->RunUntilIdle();
|
| + vcm_->Unregister();
|
| +}
|
| +
|
| // Open the same device twice.
|
| TEST_F(VideoCaptureManagerTest, OpenTwice) {
|
| StreamDeviceInfoArray devices;
|
|
|