| 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 091a288285c9aeab9d18aa385c8f34566f277929..0a7ef21b0c45def5bfc3ab17f04263cceeff95cd 100644
|
| --- a/content/browser/renderer_host/media/video_capture_controller_unittest.cc
|
| +++ b/content/browser/renderer_host/media/video_capture_controller_unittest.cc
|
| @@ -632,4 +632,40 @@ TEST_F(VideoCaptureControllerTest, ErrorAfterDeviceCreation) {
|
| Mock::VerifyAndClearExpectations(client_b_.get());
|
| }
|
|
|
| +TEST_F(VideoCaptureControllerTest, DataCaptureInEachVideoFormatInSequence) {
|
| + // This Test will skip PIXEL_FORMAT_TEXTURE and PIXEL_FORMAT_UNKNOWN
|
| + for (int format = 0; format < media::PIXEL_FORMAT_TEXTURE; ++format) {
|
| + media::VideoCaptureParams params;
|
| + params.requested_format = media::VideoCaptureFormat(
|
| + gfx::Size(320, 240), 30, media::VideoPixelFormat(format));
|
| +
|
| + const gfx::Size capture_resolution(320, 240);
|
| +
|
| + const VideoCaptureControllerID route(0x99);
|
| +
|
| + // Start with one client.
|
| + controller_->AddClient(route,
|
| + client_a_.get(),
|
| + base::kNullProcessHandle,
|
| + 100,
|
| + params);
|
| + ASSERT_EQ(1, controller_->GetClientCount());
|
| +
|
| + // Now, simulate an incoming captured buffer from the capture device.
|
| + scoped_refptr<media::VideoCaptureDevice::Client::Buffer> buffer;
|
| + buffer =
|
| + device_->ReserveOutputBuffer(media::VideoFrame::I420,
|
| + capture_resolution);
|
| + ASSERT_TRUE(buffer.get());
|
| +
|
| + // Captured a new video frame.
|
| + device_->OnIncomingCapturedData(
|
| + static_cast<unsigned char*>(buffer.get()->data()),
|
| + buffer.get()->size(),
|
| + params.requested_format,
|
| + 0,
|
| + base::TimeTicks());
|
| + }
|
| +}
|
| +
|
| } // namespace content
|
|
|