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

Side by Side Diff: content/browser/renderer_host/media/video_capture_manager_unittest.cc

Issue 15906019: Hook up EncodedVideoSource on the browser side (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@screencast_cl_6
Patch Set: 516738a8 IPC/struct changes, courtesy hshi@ Created 7 years, 6 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 unified diff | Download patch
OLDNEW
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 // Unit test for VideoCaptureManager. 5 // Unit test for VideoCaptureManager.
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/memory/ref_counted.h" 10 #include "base/memory/ref_counted.h"
11 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
12 #include "base/message_loop.h" 12 #include "base/message_loop.h"
13 #include "base/process_util.h" 13 #include "base/process_util.h"
14 #include "content/browser/browser_thread_impl.h" 14 #include "content/browser/browser_thread_impl.h"
15 #include "content/browser/renderer_host/media/media_stream_provider.h" 15 #include "content/browser/renderer_host/media/media_stream_provider.h"
16 #include "content/browser/renderer_host/media/video_capture_manager.h" 16 #include "content/browser/renderer_host/media/video_capture_manager.h"
17 #include "content/common/media/media_stream_options.h" 17 #include "content/common/media/media_stream_options.h"
18 #include "media/base/encoded_bitstream_buffer.h"
18 #include "media/video/capture/video_capture_device.h" 19 #include "media/video/capture/video_capture_device.h"
19 #include "testing/gmock/include/gmock/gmock.h" 20 #include "testing/gmock/include/gmock/gmock.h"
20 #include "testing/gtest/include/gtest/gtest.h" 21 #include "testing/gtest/include/gtest/gtest.h"
21 22
22 using ::testing::_; 23 using ::testing::_;
23 using ::testing::AnyNumber; 24 using ::testing::AnyNumber;
24 using ::testing::InSequence; 25 using ::testing::InSequence;
25 using testing::SaveArg; 26 using testing::SaveArg;
26 using ::testing::Return; 27 using ::testing::Return;
27 28
28 namespace content { 29 namespace content {
29 30
30 // Listener class used to track progress of VideoCaptureManager test. 31 // Listener class used to track progress of VideoCaptureManager test.
31 class MockMediaStreamProviderListener : public MediaStreamProviderListener { 32 class MockMediaStreamProviderListener : public MediaStreamProviderListener {
32 public: 33 public:
33 MockMediaStreamProviderListener() {} 34 MockMediaStreamProviderListener() {}
34 ~MockMediaStreamProviderListener() {} 35 ~MockMediaStreamProviderListener() {}
35 36
36 MOCK_METHOD2(Opened, void(MediaStreamType, int)); 37 MOCK_METHOD2(Opened, void(MediaStreamType, int));
37 MOCK_METHOD2(Closed, void(MediaStreamType, int)); 38 MOCK_METHOD2(Closed, void(MediaStreamType, int));
38 MOCK_METHOD2(DevicesEnumerated, void(MediaStreamType, 39 MOCK_METHOD2(DevicesEnumerated, void(MediaStreamType,
39 const StreamDeviceInfoArray&)); 40 const StreamDeviceInfoArray&));
40 MOCK_METHOD3(Error, void(MediaStreamType, int, 41 MOCK_METHOD3(Error, void(MediaStreamType, int,
41 MediaStreamProviderError)); 42 MediaStreamProviderError));
42 }; // class MockMediaStreamProviderListener 43 }; // class MockMediaStreamProviderListener
43 44
44 // Needed as an input argument to Start(). 45 // Needed as an input argument to Start().
45 class MockFrameObserver : public media::VideoCaptureDevice::EventHandler { 46 class MockFrameObserver : public media::VideoCaptureDevice::EventHandler {
46 public: 47 public:
47 virtual scoped_refptr<media::VideoFrame> ReserveOutputBuffer() OVERRIDE { 48 virtual scoped_refptr<media::VideoFrame> ReserveOutputVideoFrame() OVERRIDE {
49 return NULL;
50 }
51 virtual scoped_refptr<media::EncodedBitstreamBuffer>
52 ReserveOutputEncodedBitstreamBuffer() OVERRIDE {
48 return NULL; 53 return NULL;
49 } 54 }
50 virtual void OnError() OVERRIDE {} 55 virtual void OnError() OVERRIDE {}
51 virtual void OnFrameInfo( 56 virtual void OnFrameInfo(
52 const media::VideoCaptureCapability& info) OVERRIDE {} 57 const media::VideoCaptureCapability& info) OVERRIDE {}
58 virtual void OnEncodedFrameInfo(
59 const media::VideoEncodingParameters& parameters) OVERRIDE {}
53 virtual void OnIncomingCapturedFrame(const uint8* data, 60 virtual void OnIncomingCapturedFrame(const uint8* data,
54 int length, 61 int length,
55 base::Time timestamp, 62 base::Time timestamp,
56 int rotation, 63 int rotation,
57 bool flip_vert, 64 bool flip_vert,
58 bool flip_horiz) OVERRIDE {} 65 bool flip_horiz) OVERRIDE {}
66 virtual void OnBitstreamConfigChanged(
67 const media::RuntimeVideoEncodingParameters& params) OVERRIDE {}
59 virtual void OnIncomingCapturedVideoFrame( 68 virtual void OnIncomingCapturedVideoFrame(
60 const scoped_refptr<media::VideoFrame>& frame, 69 const scoped_refptr<media::VideoFrame>& frame,
61 base::Time timestamp) OVERRIDE {} 70 base::Time timestamp) OVERRIDE {}
71 virtual void OnIncomingCapturedEncodedBitstreamBuffer(
72 const scoped_refptr<media::EncodedBitstreamBuffer>& buffer,
73 size_t data_size,
74 base::Time timestamp) OVERRIDE {}
62 }; 75 };
63 76
64 // Test class 77 // Test class
65 class VideoCaptureManagerTest : public testing::Test { 78 class VideoCaptureManagerTest : public testing::Test {
66 public: 79 public:
67 VideoCaptureManagerTest() {} 80 VideoCaptureManagerTest() {}
68 virtual ~VideoCaptureManagerTest() {} 81 virtual ~VideoCaptureManagerTest() {}
69 82
70 protected: 83 protected:
71 virtual void SetUp() OVERRIDE { 84 virtual void SetUp() OVERRIDE {
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after
264 // VideoCaptureManager destructor otherwise. 277 // VideoCaptureManager destructor otherwise.
265 vcm_->Close(video_session_id); 278 vcm_->Close(video_session_id);
266 vcm_->Stop(video_session_id, base::Closure()); 279 vcm_->Stop(video_session_id, base::Closure());
267 280
268 // Wait to check callbacks before removing the listener 281 // Wait to check callbacks before removing the listener
269 message_loop_->RunUntilIdle(); 282 message_loop_->RunUntilIdle();
270 vcm_->Unregister(); 283 vcm_->Unregister();
271 } 284 }
272 285
273 } // namespace content 286 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698