Chromium Code Reviews| 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_; |
| }; |