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

Unified Diff: trunk/src/content/renderer/media/webrtc/media_stream_remote_video_source_unittest.cc

Issue 231963002: Revert 262050 "Implement a source for remote video tracks." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 8 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: trunk/src/content/renderer/media/webrtc/media_stream_remote_video_source_unittest.cc
===================================================================
--- trunk/src/content/renderer/media/webrtc/media_stream_remote_video_source_unittest.cc (revision 262817)
+++ trunk/src/content/renderer/media/webrtc/media_stream_remote_video_source_unittest.cc (working copy)
@@ -1,160 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "base/strings/utf_string_conversions.h"
-#include "content/public/renderer/media_stream_video_sink.h"
-#include "content/renderer/media/media_stream_video_track.h"
-#include "content/renderer/media/mock_media_stream_dependency_factory.h"
-#include "content/renderer/media/webrtc/media_stream_remote_video_source.h"
-#include "media/base/video_frame.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "third_party/libjingle/source/talk/media/webrtc/webrtcvideoframe.h"
-
-namespace content {
-
-class MockVideoSink : public MediaStreamVideoSink {
- public:
- MockVideoSink()
- : number_of_frames_(0),
- state_(blink::WebMediaStreamSource::ReadyStateLive) {
- }
-
- virtual void OnVideoFrame(
- const scoped_refptr<media::VideoFrame>& frame) OVERRIDE {
- ++number_of_frames_;
- }
-
- virtual void OnReadyStateChanged(
- blink::WebMediaStreamSource::ReadyState state) OVERRIDE {
- state_ = state;
- }
-
- int number_of_frames() const { return number_of_frames_; }
- blink::WebMediaStreamSource::ReadyState state() const { return state_; }
-
- private:
- int number_of_frames_;
- blink::WebMediaStreamSource::ReadyState state_;
-};
-
-class MediaStreamRemoteVideoSourceUnderTest
- : public MediaStreamRemoteVideoSource {
- public:
- MediaStreamRemoteVideoSourceUnderTest(webrtc::VideoTrackInterface* track)
- : MediaStreamRemoteVideoSource(track) {
- }
- using MediaStreamRemoteVideoSource::RenderFrame;
-};
-
-class MediaStreamRemoteVideoSourceTest
- : public ::testing::Test {
- public:
- MediaStreamRemoteVideoSourceTest()
- : mock_factory_(new MockMediaStreamDependencyFactory()),
- webrtc_video_track_(
- mock_factory_->CreateLocalVideoTrack(
- "test",
- static_cast<cricket::VideoCapturer*>(NULL))),
- remote_source_(
- new MediaStreamRemoteVideoSourceUnderTest(webrtc_video_track_)),
- number_of_successful_constraints_applied_(0),
- number_of_failed_constraints_applied_(0) {
- webkit_source_.initialize(base::UTF8ToUTF16("dummy_source_id"),
- blink::WebMediaStreamSource::TypeVideo,
- base::UTF8ToUTF16("dummy_source_name"));
- webkit_source_.setExtraData(remote_source_);
- }
- virtual ~MediaStreamRemoteVideoSourceTest() {}
-
- MediaStreamRemoteVideoSourceUnderTest* source() {
- return remote_source_;
- }
-
- MediaStreamVideoTrack* CreateTrack() {
- bool enabled = true;
- blink::WebMediaConstraints constraints;
- constraints.initialize();
- MediaStreamDependencyFactory* factory = NULL;
- return new MediaStreamVideoTrack(
- source(),
- constraints,
- base::Bind(
- &MediaStreamRemoteVideoSourceTest::OnConstraintsApplied,
- base::Unretained(this)),
- enabled, factory);
- }
-
- int NumberOfSuccessConstraintsCallbacks() const {
- return number_of_successful_constraints_applied_;
- }
-
- int NumberOfFailedConstraintsCallbacks() const {
- return number_of_failed_constraints_applied_;
- }
-
- void StopWebRtcTrack() {
- static_cast<MockWebRtcVideoTrack*>(webrtc_video_track_.get())->set_state(
- webrtc::MediaStreamTrackInterface::kEnded);
- }
-
- base::MessageLoop* message_loop() { return &message_loop_; }
-
- const blink::WebMediaStreamSource& webkit_source() const {
- return webkit_source_;
- }
-
- private:
- void OnConstraintsApplied(MediaStreamSource* source, bool success) {
- ASSERT_EQ(source, remote_source_);
- if (success)
- ++number_of_successful_constraints_applied_;
- else
- ++number_of_failed_constraints_applied_;
- }
-
- base::MessageLoop message_loop_;
- scoped_ptr<MockMediaStreamDependencyFactory> mock_factory_;
- scoped_refptr<webrtc::VideoTrackInterface> webrtc_video_track_;
- // |remote_source_| is owned by |webkit_source_|.
- MediaStreamRemoteVideoSourceUnderTest* remote_source_;
- blink::WebMediaStreamSource webkit_source_;
- int number_of_successful_constraints_applied_;
- int number_of_failed_constraints_applied_;
-};
-
-TEST_F(MediaStreamRemoteVideoSourceTest, StartTrack) {
- scoped_ptr<MediaStreamVideoTrack> track(CreateTrack());
- EXPECT_EQ(0, NumberOfSuccessConstraintsCallbacks());
-
- MockVideoSink sink;
- track->AddSink(&sink);
-
- cricket::WebRtcVideoFrame webrtc_frame;
- webrtc_frame.InitToBlack(320, 240, 1, 1, 0, 1);
- source()->RenderFrame(&webrtc_frame);
- message_loop()->RunUntilIdle();
-
- EXPECT_EQ(1, NumberOfSuccessConstraintsCallbacks());
- EXPECT_EQ(1, sink.number_of_frames());
- track->RemoveSink(&sink);
-}
-
-TEST_F(MediaStreamRemoteVideoSourceTest, RemoteTrackStop) {
- scoped_ptr<MediaStreamVideoTrack> track(CreateTrack());
-
- MockVideoSink sink;
- track->AddSink(&sink);
-
- EXPECT_EQ(blink::WebMediaStreamSource::ReadyStateLive, sink.state());
- EXPECT_EQ(blink::WebMediaStreamSource::ReadyStateLive,
- webkit_source().readyState());
- StopWebRtcTrack();
- EXPECT_EQ(blink::WebMediaStreamSource::ReadyStateEnded,
- webkit_source().readyState());
- EXPECT_EQ(blink::WebMediaStreamSource::ReadyStateEnded, sink.state());
-
- track->RemoveSink(&sink);
-}
-
-} // namespace content

Powered by Google App Engine
This is Rietveld 408576698