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

Unified Diff: talk/media/webrtc/webrtcvideoengine2_unittest.cc

Issue 1269863005: MediaController/Call instantiation. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: rebase+comments Created 5 years, 3 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: talk/media/webrtc/webrtcvideoengine2_unittest.cc
diff --git a/talk/media/webrtc/webrtcvideoengine2_unittest.cc b/talk/media/webrtc/webrtcvideoengine2_unittest.cc
index e488ad70ad7ed789fad8d3b6ee8db4c8019200f2..9d3fe6d02751c468eae6ffe76df9f311bf710921 100644
--- a/talk/media/webrtc/webrtcvideoengine2_unittest.cc
+++ b/talk/media/webrtc/webrtcvideoengine2_unittest.cc
@@ -110,7 +110,8 @@ class WebRtcVideoEngine2Test : public ::testing::Test {
public:
WebRtcVideoEngine2Test() : WebRtcVideoEngine2Test(nullptr) {}
WebRtcVideoEngine2Test(WebRtcVoiceEngine* voice_engine)
- : engine_(voice_engine) {
+ : call_(webrtc::Call::Create(webrtc::Call::Config())),
+ engine_() {
std::vector<VideoCodec> engine_codecs = engine_.codecs();
DCHECK(!engine_codecs.empty());
bool codec_set = false;
@@ -135,21 +136,6 @@ class WebRtcVideoEngine2Test : public ::testing::Test {
}
protected:
- class FakeCallFactory : public WebRtcCallFactory {
- public:
- FakeCallFactory() : fake_call_(NULL) {}
- FakeCall* GetCall() { return fake_call_; }
-
- private:
- webrtc::Call* CreateCall(const webrtc::Call::Config& config) override {
- DCHECK(fake_call_ == NULL);
- fake_call_ = new FakeCall(config);
- return fake_call_;
- }
-
- FakeCall* fake_call_;
- };
-
VideoMediaChannel* SetUpForExternalEncoderFactory(
cricket::WebRtcVideoEncoderFactory* encoder_factory,
const std::vector<VideoCodec>& codecs);
@@ -160,6 +146,7 @@ class WebRtcVideoEngine2Test : public ::testing::Test {
// Used in WebRtcVideoEngine2VoiceTest, but defined here so it's properly
// initialized when the constructor is called.
+ rtc::scoped_ptr<webrtc::Call> call_;
WebRtcVoiceEngine voice_engine_;
WebRtcVideoEngine2 engine_;
VideoCodec default_codec_;
@@ -350,7 +337,7 @@ TEST_F(WebRtcVideoEngine2Test, CVOSetHeaderExtensionAfterCapturer) {
TEST_F(WebRtcVideoEngine2Test, SetSendFailsBeforeSettingCodecs) {
engine_.Init();
rtc::scoped_ptr<VideoMediaChannel> channel(
- engine_.CreateChannel(cricket::VideoOptions(), NULL));
+ engine_.CreateChannel(call_.get(), cricket::VideoOptions()));
EXPECT_TRUE(channel->AddSendStream(StreamParams::CreateLegacy(123)));
@@ -363,7 +350,7 @@ TEST_F(WebRtcVideoEngine2Test, SetSendFailsBeforeSettingCodecs) {
TEST_F(WebRtcVideoEngine2Test, GetStatsWithoutSendCodecsSetDoesNotCrash) {
engine_.Init();
rtc::scoped_ptr<VideoMediaChannel> channel(
- engine_.CreateChannel(cricket::VideoOptions(), NULL));
+ engine_.CreateChannel(call_.get(), cricket::VideoOptions()));
EXPECT_TRUE(channel->AddSendStream(StreamParams::CreateLegacy(123)));
VideoMediaInfo info;
channel->GetStats(&info);
@@ -425,8 +412,8 @@ TEST_F(WebRtcVideoEngine2Test, PropagatesInputFrameTimestamp) {
std::vector<cricket::VideoCodec> codecs;
codecs.push_back(kVp8Codec);
- FakeCallFactory factory;
- engine_.SetCallFactory(&factory);
+ FakeCall* fake_call = new FakeCall(webrtc::Call::Config());
+ call_.reset(fake_call);
rtc::scoped_ptr<VideoMediaChannel> channel(
SetUpForExternalEncoderFactory(&encoder_factory, codecs));
@@ -440,8 +427,7 @@ TEST_F(WebRtcVideoEngine2Test, PropagatesInputFrameTimestamp) {
cricket::FOURCC_I420));
channel->SetSend(true);
- FakeCall* call = factory.GetCall();
- std::vector<FakeVideoSendStream*> streams = call->GetVideoSendStreams();
+ std::vector<FakeVideoSendStream*> streams = fake_call->GetVideoSendStreams();
FakeVideoSendStream* stream = streams[0];
int64_t timestamp;
@@ -490,7 +476,7 @@ VideoMediaChannel* WebRtcVideoEngine2Test::SetUpForExternalEncoderFactory(
engine_.Init();
VideoMediaChannel* channel =
- engine_.CreateChannel(cricket::VideoOptions(), NULL);
+ engine_.CreateChannel(call_.get(), cricket::VideoOptions());
EXPECT_TRUE(channel->SetSendCodecs(codecs));
return channel;
@@ -503,7 +489,7 @@ VideoMediaChannel* WebRtcVideoEngine2Test::SetUpForExternalDecoderFactory(
engine_.Init();
VideoMediaChannel* channel =
- engine_.CreateChannel(cricket::VideoOptions(), NULL);
+ engine_.CreateChannel(call_.get(), cricket::VideoOptions());
EXPECT_TRUE(channel->SetRecvCodecs(codecs));
return channel;
@@ -854,15 +840,14 @@ TEST_F(WebRtcVideoChannel2BaseTest, DISABLED_SendVp8HdAndReceiveAdaptedVp8Vga) {
EXPECT_FRAME_WAIT(1, codec.width, codec.height, kTimeout);
}
-class WebRtcVideoChannel2Test : public WebRtcVideoEngine2Test,
- public WebRtcCallFactory {
+class WebRtcVideoChannel2Test : public WebRtcVideoEngine2Test {
public:
- WebRtcVideoChannel2Test() : fake_call_(NULL), last_ssrc_(0) {}
+ WebRtcVideoChannel2Test() : last_ssrc_(0) {}
void SetUp() override {
- engine_.SetCallFactory(this);
+ fake_call_.reset(new FakeCall(webrtc::Call::Config()));
engine_.Init();
- channel_.reset(engine_.CreateChannel(cricket::VideoOptions(), NULL));
- ASSERT_TRUE(fake_call_ != NULL) << "Call not created through factory.";
+ channel_.reset(
+ engine_.CreateChannel(fake_call_.get(), cricket::VideoOptions()));
last_ssrc_ = 123;
ASSERT_TRUE(channel_->SetSendCodecs(engine_.codecs()));
}
@@ -872,12 +857,6 @@ class WebRtcVideoChannel2Test : public WebRtcVideoEngine2Test,
return engine_.codecs();
}
- webrtc::Call* CreateCall(const webrtc::Call::Config& config) override {
- DCHECK(fake_call_ == NULL);
- fake_call_ = new FakeCall(config);
- return fake_call_;
- }
-
FakeVideoSendStream* AddSendStream() {
return AddSendStream(StreamParams::CreateLegacy(++last_ssrc_));
}
@@ -931,7 +910,6 @@ class WebRtcVideoChannel2Test : public WebRtcVideoEngine2Test,
void TestSetSendRtpHeaderExtensions(const std::string& cricket_ext,
const std::string& webrtc_ext) {
- FakeCall* call = fake_call_;
// Enable extension.
const int id = 1;
std::vector<cricket::RtpHeaderExtension> extensions;
@@ -956,14 +934,14 @@ class WebRtcVideoChannel2Test : public WebRtcVideoEngine2Test,
// Verify that existing RTP header extensions can be removed.
std::vector<cricket::RtpHeaderExtension> empty_extensions;
EXPECT_TRUE(channel_->SetSendRtpHeaderExtensions(empty_extensions));
- ASSERT_EQ(1u, call->GetVideoSendStreams().size());
- send_stream = call->GetVideoSendStreams()[0];
+ ASSERT_EQ(1u, fake_call_->GetVideoSendStreams().size());
+ send_stream = fake_call_->GetVideoSendStreams()[0];
EXPECT_TRUE(send_stream->GetConfig().rtp.extensions.empty());
// Verify that adding receive RTP header extensions adds them for existing
// streams.
EXPECT_TRUE(channel_->SetSendRtpHeaderExtensions(extensions));
- send_stream = call->GetVideoSendStreams()[0];
+ send_stream = fake_call_->GetVideoSendStreams()[0];
ASSERT_EQ(1u, send_stream->GetConfig().rtp.extensions.size());
EXPECT_EQ(id, send_stream->GetConfig().rtp.extensions[0].id);
EXPECT_EQ(webrtc_ext, send_stream->GetConfig().rtp.extensions[0].name);
@@ -971,7 +949,6 @@ class WebRtcVideoChannel2Test : public WebRtcVideoEngine2Test,
void TestSetRecvRtpHeaderExtensions(const std::string& cricket_ext,
const std::string& webrtc_ext) {
- FakeCall* call = fake_call_;
// Enable extension.
const int id = 1;
std::vector<cricket::RtpHeaderExtension> extensions;
@@ -997,14 +974,14 @@ class WebRtcVideoChannel2Test : public WebRtcVideoEngine2Test,
// Verify that existing RTP header extensions can be removed.
std::vector<cricket::RtpHeaderExtension> empty_extensions;
EXPECT_TRUE(channel_->SetRecvRtpHeaderExtensions(empty_extensions));
- ASSERT_EQ(1u, call->GetVideoReceiveStreams().size());
- recv_stream = call->GetVideoReceiveStreams()[0];
+ ASSERT_EQ(1u, fake_call_->GetVideoReceiveStreams().size());
+ recv_stream = fake_call_->GetVideoReceiveStreams()[0];
EXPECT_TRUE(recv_stream->GetConfig().rtp.extensions.empty());
// Verify that adding receive RTP header extensions adds them for existing
// streams.
EXPECT_TRUE(channel_->SetRecvRtpHeaderExtensions(extensions));
- recv_stream = call->GetVideoReceiveStreams()[0];
+ recv_stream = fake_call_->GetVideoReceiveStreams()[0];
ASSERT_EQ(1u, recv_stream->GetConfig().rtp.extensions.size());
EXPECT_EQ(id, recv_stream->GetConfig().rtp.extensions[0].id);
EXPECT_EQ(webrtc_ext, recv_stream->GetConfig().rtp.extensions[0].name);
@@ -1035,7 +1012,7 @@ class WebRtcVideoChannel2Test : public WebRtcVideoEngine2Test,
}
}
- FakeCall* fake_call_;
+ rtc::scoped_ptr<FakeCall> fake_call_;
rtc::scoped_ptr<VideoMediaChannel> channel_;
uint32 last_ssrc_;
};
@@ -2771,7 +2748,7 @@ TEST_F(WebRtcVideoChannel2Test, ConfiguresLocalSsrcOnExistingReceivers) {
class WebRtcVideoEngine2SimulcastTest : public testing::Test {
public:
- WebRtcVideoEngine2SimulcastTest() : engine_(nullptr) {}
+ WebRtcVideoEngine2SimulcastTest() {}
pbos-webrtc 2015/09/08 14:47:41 Remove ctor.
the sun 2015/09/08 15:21:35 Done.
protected:
WebRtcVideoEngine2 engine_;
pbos-webrtc 2015/09/08 14:47:41 If this is unused now then this should just be an
the sun 2015/09/08 15:21:35 Done.
@@ -2922,26 +2899,17 @@ TEST_F(WebRtcVideoEngine2SimulcastTest,
FAIL() << "Not implemented.";
}
-class WebRtcVideoChannel2SimulcastTest : public WebRtcVideoEngine2SimulcastTest,
- public WebRtcCallFactory {
+class WebRtcVideoChannel2SimulcastTest : public testing::Test {
public:
- WebRtcVideoChannel2SimulcastTest() : fake_call_(NULL) {}
+ WebRtcVideoChannel2SimulcastTest() : fake_call_(webrtc::Call::Config()) {}
void SetUp() override {
- engine_.SetCallFactory(this);
engine_.Init();
- channel_.reset(engine_.CreateChannel(VideoOptions(), NULL));
- ASSERT_TRUE(fake_call_ != NULL) << "Call not created through factory.";
+ channel_.reset(engine_.CreateChannel(&fake_call_, VideoOptions()));
last_ssrc_ = 123;
}
protected:
- webrtc::Call* CreateCall(const webrtc::Call::Config& config) override {
- DCHECK(fake_call_ == NULL);
- fake_call_ = new FakeCall(config);
- return fake_call_;
- }
-
void VerifySimulcastSettings(const VideoCodec& codec,
VideoOptions::HighestBitrate bitrate_mode,
size_t num_configured_streams,
@@ -3035,16 +3003,16 @@ class WebRtcVideoChannel2SimulcastTest : public WebRtcVideoEngine2SimulcastTest,
FakeVideoSendStream* AddSendStream(const StreamParams& sp) {
size_t num_streams =
- fake_call_->GetVideoSendStreams().size();
+ fake_call_.GetVideoSendStreams().size();
EXPECT_TRUE(channel_->AddSendStream(sp));
std::vector<FakeVideoSendStream*> streams =
- fake_call_->GetVideoSendStreams();
+ fake_call_.GetVideoSendStreams();
EXPECT_EQ(num_streams + 1, streams.size());
return streams[streams.size() - 1];
}
std::vector<FakeVideoSendStream*> GetFakeSendStreams() {
- return fake_call_->GetVideoSendStreams();
+ return fake_call_.GetVideoSendStreams();
}
FakeVideoReceiveStream* AddRecvStream() {
@@ -3053,15 +3021,16 @@ class WebRtcVideoChannel2SimulcastTest : public WebRtcVideoEngine2SimulcastTest,
FakeVideoReceiveStream* AddRecvStream(const StreamParams& sp) {
size_t num_streams =
- fake_call_->GetVideoReceiveStreams().size();
+ fake_call_.GetVideoReceiveStreams().size();
EXPECT_TRUE(channel_->AddRecvStream(sp));
std::vector<FakeVideoReceiveStream*> streams =
- fake_call_->GetVideoReceiveStreams();
+ fake_call_.GetVideoReceiveStreams();
EXPECT_EQ(num_streams + 1, streams.size());
return streams[streams.size() - 1];
}
- FakeCall* fake_call_;
+ FakeCall fake_call_;
+ WebRtcVideoEngine2 engine_;
rtc::scoped_ptr<VideoMediaChannel> channel_;
uint32 last_ssrc_;
};

Powered by Google App Engine
This is Rietveld 408576698