Index: content/renderer/media/webrtc/media_stream_remote_video_source_unittest.cc |
diff --git a/content/renderer/media/webrtc/media_stream_remote_video_source_unittest.cc b/content/renderer/media/webrtc/media_stream_remote_video_source_unittest.cc |
index 4d9d7ebd0f421af2eec27778cda11bc6b78c3b26..4026f43c5f445be21511b947018f8abaadb5f0f3 100644 |
--- a/content/renderer/media/webrtc/media_stream_remote_video_source_unittest.cc |
+++ b/content/renderer/media/webrtc/media_stream_remote_video_source_unittest.cc |
@@ -5,6 +5,7 @@ |
#include "base/message_loop/message_loop.h" |
#include "base/run_loop.h" |
#include "base/strings/utf_string_conversions.h" |
+#include "base/thread_task_runner_handle.h" |
#include "content/child/child_process.h" |
#include "content/renderer/media/media_stream_video_track.h" |
#include "content/renderer/media/mock_media_stream_video_sink.h" |
@@ -24,10 +25,10 @@ ACTION_P(RunClosure, closure) { |
class MediaStreamRemoteVideoSourceUnderTest |
: public MediaStreamRemoteVideoSource { |
public: |
- MediaStreamRemoteVideoSourceUnderTest(webrtc::VideoTrackInterface* track) |
- : MediaStreamRemoteVideoSource(track) { |
+ MediaStreamRemoteVideoSourceUnderTest(const scoped_refptr<Observer>& observer) |
+ : MediaStreamRemoteVideoSource(observer) { |
} |
- using MediaStreamRemoteVideoSource::RenderInterfaceForTest; |
+ using MediaStreamRemoteVideoSource::RenderInterfaceForTest; |
}; |
class MediaStreamRemoteVideoSourceTest |
@@ -39,8 +40,9 @@ class MediaStreamRemoteVideoSourceTest |
webrtc_video_track_(mock_factory_->CreateLocalVideoTrack( |
"test", |
static_cast<cricket::VideoCapturer*>(NULL))), |
- remote_source_(new MediaStreamRemoteVideoSourceUnderTest( |
- webrtc_video_track_.get())), |
+ observer_(new MediaStreamRemoteVideoSource::Observer( |
+ base::ThreadTaskRunnerHandle::Get(), webrtc_video_track_.get())), |
+ remote_source_(new MediaStreamRemoteVideoSourceUnderTest(observer_)), |
number_of_successful_constraints_applied_(0), |
number_of_failed_constraints_applied_(0) { |
webkit_source_.initialize(base::UTF8ToUTF16("dummy_source_id"), |
@@ -103,6 +105,7 @@ class MediaStreamRemoteVideoSourceTest |
scoped_ptr<ChildProcess> child_process_; |
scoped_ptr<MockPeerConnectionDependencyFactory> mock_factory_; |
scoped_refptr<webrtc::VideoTrackInterface> webrtc_video_track_; |
+ scoped_refptr<MediaStreamRemoteVideoSource::Observer> observer_; |
// |remote_source_| is owned by |webkit_source_|. |
MediaStreamRemoteVideoSourceUnderTest* remote_source_; |
blink::WebMediaStreamSource webkit_source_; |
@@ -138,6 +141,7 @@ TEST_F(MediaStreamRemoteVideoSourceTest, RemoteTrackStop) { |
EXPECT_EQ(blink::WebMediaStreamSource::ReadyStateLive, |
webkit_source().readyState()); |
StopWebRtcTrack(); |
+ base::RunLoop().RunUntilIdle(); |
EXPECT_EQ(blink::WebMediaStreamSource::ReadyStateEnded, |
webkit_source().readyState()); |
EXPECT_EQ(blink::WebMediaStreamSource::ReadyStateEnded, sink.state()); |