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

Unified Diff: talk/app/webrtc/videotrack_unittest.cc

Issue 1610243002: Move talk/app/webrtc to webrtc/api (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Removed processing of api.gyp for Chromium builds Created 4 years, 10 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
« no previous file with comments | « talk/app/webrtc/videotrack.cc ('k') | talk/app/webrtc/videotrackrenderers.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: talk/app/webrtc/videotrack_unittest.cc
diff --git a/talk/app/webrtc/videotrack_unittest.cc b/talk/app/webrtc/videotrack_unittest.cc
deleted file mode 100644
index 88552a55a08e3c7a2f8d1c1cabf76c7896f9e39f..0000000000000000000000000000000000000000
--- a/talk/app/webrtc/videotrack_unittest.cc
+++ /dev/null
@@ -1,146 +0,0 @@
-/*
- * libjingle
- * Copyright 2012 Google Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- * 1. Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- * 3. The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include <string>
-
-#include "talk/app/webrtc/remotevideocapturer.h"
-#include "talk/app/webrtc/test/fakevideotrackrenderer.h"
-#include "talk/app/webrtc/videosource.h"
-#include "talk/app/webrtc/videotrack.h"
-#include "talk/session/media/channelmanager.h"
-#include "webrtc/base/gunit.h"
-#include "webrtc/base/scoped_ptr.h"
-#include "webrtc/media/base/fakemediaengine.h"
-#include "webrtc/media/webrtc/webrtcvideoframe.h"
-
-using webrtc::FakeVideoTrackRenderer;
-using webrtc::VideoSource;
-using webrtc::VideoTrack;
-using webrtc::VideoTrackInterface;
-
-namespace {
-
-class WebRtcVideoTestFrame : public cricket::WebRtcVideoFrame {
- public:
- using cricket::WebRtcVideoFrame::SetRotation;
-};
-
-} // namespace
-
-class VideoTrackTest : public testing::Test {
- public:
- VideoTrackTest() {
- static const char kVideoTrackId[] = "track_id";
-
- channel_manager_.reset(new cricket::ChannelManager(
- new cricket::FakeMediaEngine(), rtc::Thread::Current()));
- EXPECT_TRUE(channel_manager_->Init());
- video_track_ = VideoTrack::Create(
- kVideoTrackId,
- VideoSource::Create(channel_manager_.get(),
- new webrtc::RemoteVideoCapturer(), NULL, true));
- }
-
- protected:
- rtc::scoped_ptr<cricket::ChannelManager> channel_manager_;
- rtc::scoped_refptr<VideoTrackInterface> video_track_;
-};
-
-// Test adding renderers to a video track and render to them by providing
-// frames to the source.
-TEST_F(VideoTrackTest, RenderVideo) {
- // FakeVideoTrackRenderer register itself to |video_track_|
- rtc::scoped_ptr<FakeVideoTrackRenderer> renderer_1(
- new FakeVideoTrackRenderer(video_track_.get()));
-
- rtc::VideoSinkInterface<cricket::VideoFrame>* renderer_input =
- video_track_->GetSink();
- ASSERT_FALSE(renderer_input == NULL);
-
- cricket::WebRtcVideoFrame frame;
- frame.InitToBlack(123, 123, 0);
- renderer_input->OnFrame(frame);
- EXPECT_EQ(1, renderer_1->num_rendered_frames());
-
- EXPECT_EQ(123, renderer_1->width());
- EXPECT_EQ(123, renderer_1->height());
-
- // FakeVideoTrackRenderer register itself to |video_track_|
- rtc::scoped_ptr<FakeVideoTrackRenderer> renderer_2(
- new FakeVideoTrackRenderer(video_track_.get()));
-
- renderer_input->OnFrame(frame);
-
- EXPECT_EQ(123, renderer_1->width());
- EXPECT_EQ(123, renderer_1->height());
- EXPECT_EQ(123, renderer_2->width());
- EXPECT_EQ(123, renderer_2->height());
-
- EXPECT_EQ(2, renderer_1->num_rendered_frames());
- EXPECT_EQ(1, renderer_2->num_rendered_frames());
-
- video_track_->RemoveRenderer(renderer_1.get());
- renderer_input->OnFrame(frame);
-
- EXPECT_EQ(2, renderer_1->num_rendered_frames());
- EXPECT_EQ(2, renderer_2->num_rendered_frames());
-}
-
-// Test that disabling the track results in blacked out frames.
-TEST_F(VideoTrackTest, DisableTrackBlackout) {
- rtc::scoped_ptr<FakeVideoTrackRenderer> renderer(
- new FakeVideoTrackRenderer(video_track_.get()));
-
- rtc::VideoSinkInterface<cricket::VideoFrame>* renderer_input =
- video_track_->GetSink();
- ASSERT_FALSE(renderer_input == NULL);
-
- cricket::WebRtcVideoFrame frame;
- frame.InitToBlack(100, 200, 0);
- // Make it not all-black
- frame.GetUPlane()[0] = 0;
-
- renderer_input->OnFrame(frame);
- EXPECT_EQ(1, renderer->num_rendered_frames());
- EXPECT_FALSE(renderer->black_frame());
- EXPECT_EQ(100, renderer->width());
- EXPECT_EQ(200, renderer->height());
-
- video_track_->set_enabled(false);
- renderer_input->OnFrame(frame);
- EXPECT_EQ(2, renderer->num_rendered_frames());
- EXPECT_TRUE(renderer->black_frame());
- EXPECT_EQ(100, renderer->width());
- EXPECT_EQ(200, renderer->height());
-
- video_track_->set_enabled(true);
- renderer_input->OnFrame(frame);
- EXPECT_EQ(3, renderer->num_rendered_frames());
- EXPECT_FALSE(renderer->black_frame());
- EXPECT_EQ(100, renderer->width());
- EXPECT_EQ(200, renderer->height());
-}
« no previous file with comments | « talk/app/webrtc/videotrack.cc ('k') | talk/app/webrtc/videotrackrenderers.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698