| Index: webrtc/pc/channel_unittest.cc
|
| diff --git a/webrtc/pc/channel_unittest.cc b/webrtc/pc/channel_unittest.cc
|
| index 3970588e833ee47172e9b6fff1c2c16f682cbe2e..f8346c9a8e87e7394e4e0978705be1ed96c14528 100644
|
| --- a/webrtc/pc/channel_unittest.cc
|
| +++ b/webrtc/pc/channel_unittest.cc
|
| @@ -95,14 +95,8 @@
|
| template<class T>
|
| class ChannelTest : public testing::Test, public sigslot::has_slots<> {
|
| public:
|
| - enum Flags {
|
| - RTCP_MUX = 0x1,
|
| - RTCP_MUX_REQUIRED = 0x2,
|
| - SECURE = 0x4,
|
| - SSRC_MUX = 0x8,
|
| - DTLS = 0x10,
|
| - GCM_CIPHER = 0x20
|
| - };
|
| + enum Flags { RTCP = 0x1, RTCP_MUX = 0x2, SECURE = 0x4, SSRC_MUX = 0x8,
|
| + DTLS = 0x10, GCM_CIPHER = 0x20 };
|
|
|
| ChannelTest(bool verify_playout,
|
| rtc::ArrayView<const uint8_t> rtp_data,
|
| @@ -138,9 +132,6 @@
|
| typename T::MediaChannel* ch2,
|
| int flags1,
|
| int flags2) {
|
| - // Make sure RTCP_MUX_REQUIRED isn't set without RTCP_MUX.
|
| - ASSERT_NE(RTCP_MUX_REQUIRED, flags1 & (RTCP_MUX | RTCP_MUX_REQUIRED));
|
| - ASSERT_NE(RTCP_MUX_REQUIRED, flags2 & (RTCP_MUX | RTCP_MUX_REQUIRED));
|
| rtc::Thread* worker_thread = rtc::Thread::Current();
|
| media_channel1_ = ch1;
|
| media_channel2_ = ch2;
|
| @@ -154,10 +145,10 @@
|
| &ChannelTest<T>::OnMediaMonitor1);
|
| channel2_->SignalMediaMonitor.connect(this,
|
| &ChannelTest<T>::OnMediaMonitor2);
|
| - channel1_->SignalRtcpMuxFullyActive.connect(
|
| + channel1_->SignalDestroyRtcpTransport.connect(
|
| transport_controller1_.get(),
|
| &cricket::FakeTransportController::DestroyRtcpTransport);
|
| - channel2_->SignalRtcpMuxFullyActive.connect(
|
| + channel2_->SignalDestroyRtcpTransport.connect(
|
| transport_controller2_.get(),
|
| &cricket::FakeTransportController::DestroyRtcpTransport);
|
| if ((flags1 & DTLS) && (flags2 & DTLS)) {
|
| @@ -210,8 +201,7 @@
|
| : nullptr;
|
| typename T::Channel* channel = new typename T::Channel(
|
| worker_thread, network_thread, signaling_thread, engine, ch,
|
| - cricket::CN_AUDIO, (flags & RTCP_MUX_REQUIRED) != 0,
|
| - (flags & SECURE) != 0);
|
| + cricket::CN_AUDIO, (flags & RTCP) != 0, (flags & SECURE) != 0);
|
| rtc::CryptoOptions crypto_options;
|
| crypto_options.enable_gcm_crypto_suites = (flags & GCM_CIPHER) != 0;
|
| channel->SetCryptoOptions(crypto_options);
|
| @@ -539,7 +529,7 @@
|
| // Test that SetLocalContent and SetRemoteContent properly set RTCP
|
| // mux.
|
| void TestSetContentsRtcpMux() {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| EXPECT_TRUE(channel1_->rtcp_transport() != NULL);
|
| EXPECT_TRUE(channel2_->rtcp_transport() != NULL);
|
| typename T::Content content;
|
| @@ -559,7 +549,7 @@
|
| // Test that SetLocalContent and SetRemoteContent properly set RTCP
|
| // mux when a provisional answer is received.
|
| void TestSetContentsRtcpMuxWithPrAnswer() {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| EXPECT_TRUE(channel1_->rtcp_transport() != NULL);
|
| EXPECT_TRUE(channel2_->rtcp_transport() != NULL);
|
| typename T::Content content;
|
| @@ -583,7 +573,9 @@
|
| void TestSetRemoteContentUpdate() {
|
| CreateChannels(0, 0);
|
| typename T::Content content;
|
| - CreateContent(RTCP_MUX | SECURE, kPcmuCodec, kH264Codec, &content);
|
| + CreateContent(RTCP | RTCP_MUX | SECURE,
|
| + kPcmuCodec, kH264Codec,
|
| + &content);
|
| EXPECT_EQ(0U, media_channel1_->codecs().size());
|
| EXPECT_TRUE(channel1_->SetLocalContent(&content, CA_OFFER, NULL));
|
| EXPECT_TRUE(channel1_->SetRemoteContent(&content, CA_ANSWER, NULL));
|
| @@ -1032,7 +1024,7 @@
|
| }
|
| };
|
| CreateChannels(new LastWordMediaChannel(), new LastWordMediaChannel(),
|
| - RTCP_MUX, RTCP_MUX);
|
| + RTCP | RTCP_MUX, RTCP | RTCP_MUX);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| EXPECT_TRUE(SendTerminate());
|
| @@ -1040,7 +1032,7 @@
|
|
|
| // Send voice RTP data to the other side and ensure it gets there.
|
| void SendRtpToRtp() {
|
| - CreateChannels(RTCP_MUX | RTCP_MUX_REQUIRED, RTCP_MUX | RTCP_MUX_REQUIRED);
|
| + CreateChannels(0, 0);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| EXPECT_EQ(1U, GetChannels1().size());
|
| @@ -1055,7 +1047,7 @@
|
| }
|
|
|
| void TestDeinit() {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| SendRtp1();
|
| @@ -1067,9 +1059,51 @@
|
| channel2_.reset(nullptr);
|
| }
|
|
|
| - // Check that RTCP can be transmitted between both sides.
|
| + // Check that RTCP is not transmitted if both sides don't support RTCP.
|
| + void SendNoRtcpToNoRtcp() {
|
| + CreateChannels(0, 0);
|
| + EXPECT_TRUE(SendInitiate());
|
| + EXPECT_TRUE(SendAccept());
|
| + EXPECT_EQ(1U, GetChannels1().size());
|
| + EXPECT_EQ(1U, GetChannels2().size());
|
| + SendRtcp1();
|
| + SendRtcp2();
|
| + WaitForThreads();
|
| + EXPECT_TRUE(CheckNoRtcp1());
|
| + EXPECT_TRUE(CheckNoRtcp2());
|
| + }
|
| +
|
| + // Check that RTCP is not transmitted if the callee doesn't support RTCP.
|
| + void SendNoRtcpToRtcp() {
|
| + CreateChannels(0, RTCP);
|
| + EXPECT_TRUE(SendInitiate());
|
| + EXPECT_TRUE(SendAccept());
|
| + EXPECT_EQ(1U, GetChannels1().size());
|
| + EXPECT_EQ(2U, GetChannels2().size());
|
| + SendRtcp1();
|
| + SendRtcp2();
|
| + WaitForThreads();
|
| + EXPECT_TRUE(CheckNoRtcp1());
|
| + EXPECT_TRUE(CheckNoRtcp2());
|
| + }
|
| +
|
| + // Check that RTCP is not transmitted if the caller doesn't support RTCP.
|
| + void SendRtcpToNoRtcp() {
|
| + CreateChannels(RTCP, 0);
|
| + EXPECT_TRUE(SendInitiate());
|
| + EXPECT_TRUE(SendAccept());
|
| + EXPECT_EQ(2U, GetChannels1().size());
|
| + EXPECT_EQ(1U, GetChannels2().size());
|
| + SendRtcp1();
|
| + SendRtcp2();
|
| + WaitForThreads();
|
| + EXPECT_TRUE(CheckNoRtcp1());
|
| + EXPECT_TRUE(CheckNoRtcp2());
|
| + }
|
| +
|
| + // Check that RTCP is transmitted if both sides support RTCP.
|
| void SendRtcpToRtcp() {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| EXPECT_EQ(2U, GetChannels1().size());
|
| @@ -1085,7 +1119,7 @@
|
|
|
| // Check that RTCP is transmitted if only the initiator supports mux.
|
| void SendRtcpMuxToRtcp() {
|
| - CreateChannels(RTCP_MUX, 0);
|
| + CreateChannels(RTCP | RTCP_MUX, RTCP);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| EXPECT_EQ(2U, GetChannels1().size());
|
| @@ -1101,7 +1135,7 @@
|
|
|
| // Check that RTP and RTCP are transmitted ok when both sides support mux.
|
| void SendRtcpMuxToRtcpMux() {
|
| - CreateChannels(RTCP_MUX, RTCP_MUX);
|
| + CreateChannels(RTCP | RTCP_MUX, RTCP | RTCP_MUX);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_EQ(2U, GetChannels1().size());
|
| EXPECT_EQ(1U, GetChannels2().size());
|
| @@ -1125,7 +1159,8 @@
|
| // Check that RTP and RTCP are transmitted ok when both sides
|
| // support mux and one the offerer requires mux.
|
| void SendRequireRtcpMuxToRtcpMux() {
|
| - CreateChannels(RTCP_MUX | RTCP_MUX_REQUIRED, RTCP_MUX);
|
| + CreateChannels(RTCP | RTCP_MUX, RTCP | RTCP_MUX);
|
| + channel1_->ActivateRtcpMux();
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_EQ(1U, GetChannels1().size());
|
| EXPECT_EQ(1U, GetChannels2().size());
|
| @@ -1146,9 +1181,10 @@
|
| }
|
|
|
| // Check that RTP and RTCP are transmitted ok when both sides
|
| - // support mux and only the answerer requires rtcp mux.
|
| + // support mux and one the answerer requires rtcp mux.
|
| void SendRtcpMuxToRequireRtcpMux() {
|
| - CreateChannels(RTCP_MUX, RTCP_MUX | RTCP_MUX_REQUIRED);
|
| + CreateChannels(RTCP | RTCP_MUX, RTCP | RTCP_MUX);
|
| + channel2_->ActivateRtcpMux();
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_EQ(2U, GetChannels1().size());
|
| EXPECT_EQ(1U, GetChannels2().size());
|
| @@ -1172,7 +1208,9 @@
|
| // Check that RTP and RTCP are transmitted ok when both sides
|
| // require mux.
|
| void SendRequireRtcpMuxToRequireRtcpMux() {
|
| - CreateChannels(RTCP_MUX | RTCP_MUX_REQUIRED, RTCP_MUX | RTCP_MUX_REQUIRED);
|
| + CreateChannels(RTCP | RTCP_MUX, RTCP | RTCP_MUX);
|
| + channel1_->ActivateRtcpMux();
|
| + channel2_->ActivateRtcpMux();
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_EQ(1U, GetChannels1().size());
|
| EXPECT_EQ(1U, GetChannels2().size());
|
| @@ -1196,7 +1234,8 @@
|
| // Check that SendAccept fails if the answerer doesn't support mux
|
| // and the offerer requires it.
|
| void SendRequireRtcpMuxToNoRtcpMux() {
|
| - CreateChannels(RTCP_MUX | RTCP_MUX_REQUIRED, 0);
|
| + CreateChannels(RTCP | RTCP_MUX, RTCP);
|
| + channel1_->ActivateRtcpMux();
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_EQ(1U, GetChannels1().size());
|
| EXPECT_EQ(2U, GetChannels2().size());
|
| @@ -1205,7 +1244,7 @@
|
|
|
| // Check that RTCP data sent by the initiator before the accept is not muxed.
|
| void SendEarlyRtcpMuxToRtcp() {
|
| - CreateChannels(RTCP_MUX, 0);
|
| + CreateChannels(RTCP | RTCP_MUX, RTCP);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_EQ(2U, GetChannels1().size());
|
| EXPECT_EQ(2U, GetChannels2().size());
|
| @@ -1238,7 +1277,7 @@
|
| // but that we properly demux before we get the accept message, since there
|
| // is a race between RTP data and the jingle accept.
|
| void SendEarlyRtcpMuxToRtcpMux() {
|
| - CreateChannels(RTCP_MUX, RTCP_MUX);
|
| + CreateChannels(RTCP | RTCP_MUX, RTCP | RTCP_MUX);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_EQ(2U, GetChannels1().size());
|
| EXPECT_EQ(1U, GetChannels2().size());
|
| @@ -1271,8 +1310,8 @@
|
| ASSERT((flags1_in & ~(RTCP_MUX | DTLS | GCM_CIPHER)) == 0);
|
| ASSERT((flags2_in & ~(RTCP_MUX | DTLS | GCM_CIPHER)) == 0);
|
|
|
| - int flags1 = SECURE | flags1_in;
|
| - int flags2 = SECURE | flags2_in;
|
| + int flags1 = RTCP | SECURE | flags1_in;
|
| + int flags2 = RTCP | SECURE | flags2_in;
|
| bool dtls1 = !!(flags1_in & DTLS);
|
| bool dtls2 = !!(flags2_in & DTLS);
|
| CreateChannels(flags1, flags2);
|
| @@ -1312,7 +1351,7 @@
|
|
|
| // Test that we properly handling SRTP negotiating down to RTP.
|
| void SendSrtpToRtp() {
|
| - CreateChannels(SECURE, 0);
|
| + CreateChannels(RTCP | SECURE, RTCP);
|
| EXPECT_FALSE(channel1_->secure());
|
| EXPECT_FALSE(channel2_->secure());
|
| EXPECT_TRUE(SendInitiate());
|
| @@ -1339,8 +1378,8 @@
|
| void SendEarlyMediaUsingRtcpMuxSrtp() {
|
| int sequence_number1_1 = 0, sequence_number2_2 = 0;
|
|
|
| - CreateChannels(SSRC_MUX | RTCP_MUX | SECURE,
|
| - SSRC_MUX | RTCP_MUX | SECURE);
|
| + CreateChannels(SSRC_MUX | RTCP | RTCP_MUX | SECURE,
|
| + SSRC_MUX | RTCP | RTCP_MUX | SECURE);
|
| EXPECT_TRUE(SendOffer());
|
| EXPECT_TRUE(SendProvisionalAnswer());
|
| EXPECT_TRUE(channel1_->secure());
|
| @@ -1380,7 +1419,7 @@
|
|
|
| // Test that we properly send RTP without SRTP from a thread.
|
| void SendRtpToRtpOnThread() {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| ScopedCallThread send_rtp1([this] { SendRtp1(); });
|
| @@ -1403,7 +1442,7 @@
|
|
|
| // Test that we properly send SRTP with RTCP from a thread.
|
| void SendSrtpToSrtpOnThread() {
|
| - CreateChannels(SECURE, SECURE);
|
| + CreateChannels(RTCP | SECURE, RTCP | SECURE);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| ScopedCallThread send_rtp1([this] { SendRtp1(); });
|
| @@ -1427,7 +1466,7 @@
|
| // Test that the mediachannel retains its sending state after the transport
|
| // becomes non-writable.
|
| void SendWithWritabilityLoss() {
|
| - CreateChannels(RTCP_MUX | RTCP_MUX_REQUIRED, RTCP_MUX | RTCP_MUX_REQUIRED);
|
| + CreateChannels(0, 0);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| EXPECT_EQ(1U, GetChannels1().size());
|
| @@ -1495,7 +1534,7 @@
|
| // and |channel2_|.
|
| int pl_type1 = pl_types[0];
|
| int pl_type2 = pl_types[1];
|
| - int flags = SSRC_MUX;
|
| + int flags = SSRC_MUX | RTCP;
|
| if (secure) flags |= SECURE;
|
| uint32_t expected_channels = 2U;
|
| if (rtcp_mux) {
|
| @@ -1685,7 +1724,7 @@
|
| }
|
|
|
| void TestFlushRtcp() {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| EXPECT_EQ(2U, GetChannels1().size());
|
| @@ -1740,7 +1779,7 @@
|
| // TODO(deadbeef): Fix this.
|
| fake_clock.AdvanceTime(rtc::TimeDelta::FromSeconds(1));
|
|
|
| - CreateChannels(SECURE, SECURE);
|
| + CreateChannels(RTCP | SECURE, RTCP | SECURE);
|
| EXPECT_FALSE(channel1_->secure());
|
| EXPECT_FALSE(channel2_->secure());
|
| EXPECT_TRUE(SendInitiate());
|
| @@ -1793,7 +1832,7 @@
|
| }
|
|
|
| void TestOnReadyToSend() {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| TransportChannel* rtp = channel1_->rtp_transport();
|
| TransportChannel* rtcp = channel1_->rtcp_transport();
|
| EXPECT_FALSE(media_channel1_->ready_to_send());
|
| @@ -1838,7 +1877,7 @@
|
| }
|
|
|
| void TestOnReadyToSendWithRtcpMux() {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| typename T::Content content;
|
| CreateContent(0, kPcmuCodec, kH264Codec, &content);
|
| // Both sides agree on mux. Should no longer be a separate RTCP channel.
|
| @@ -2021,7 +2060,7 @@
|
| transport_controller ? transport_controller->signaling_thread() : nullptr;
|
| cricket::VideoChannel* channel = new cricket::VideoChannel(
|
| worker_thread, network_thread, signaling_thread, ch, cricket::CN_VIDEO,
|
| - (flags & RTCP_MUX_REQUIRED) != 0, (flags & SECURE) != 0);
|
| + (flags & RTCP) != 0, (flags & SECURE) != 0);
|
| rtc::CryptoOptions crypto_options;
|
| crypto_options.enable_gcm_crypto_suites = (flags & GCM_CIPHER) != 0;
|
| channel->SetCryptoOptions(crypto_options);
|
| @@ -2189,6 +2228,18 @@
|
| Base::SendRtpToRtp();
|
| }
|
|
|
| +TEST_F(VoiceChannelSingleThreadTest, SendNoRtcpToNoRtcp) {
|
| + Base::SendNoRtcpToNoRtcp();
|
| +}
|
| +
|
| +TEST_F(VoiceChannelSingleThreadTest, SendNoRtcpToRtcp) {
|
| + Base::SendNoRtcpToRtcp();
|
| +}
|
| +
|
| +TEST_F(VoiceChannelSingleThreadTest, SendRtcpToNoRtcp) {
|
| + Base::SendRtcpToNoRtcp();
|
| +}
|
| +
|
| TEST_F(VoiceChannelSingleThreadTest, SendRtcpToRtcp) {
|
| Base::SendRtcpToRtcp();
|
| }
|
| @@ -2345,7 +2396,7 @@
|
|
|
| // Test that we can scale the output volume properly for 1:1 calls.
|
| TEST_F(VoiceChannelSingleThreadTest, TestScaleVolume1to1Call) {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| double volume;
|
| @@ -2369,7 +2420,7 @@
|
|
|
| // Test that we can scale the output volume properly for multiway calls.
|
| TEST_F(VoiceChannelSingleThreadTest, TestScaleVolumeMultiwayCall) {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| EXPECT_TRUE(AddStream1(1));
|
| @@ -2522,6 +2573,18 @@
|
| Base::SendRtpToRtp();
|
| }
|
|
|
| +TEST_F(VoiceChannelDoubleThreadTest, SendNoRtcpToNoRtcp) {
|
| + Base::SendNoRtcpToNoRtcp();
|
| +}
|
| +
|
| +TEST_F(VoiceChannelDoubleThreadTest, SendNoRtcpToRtcp) {
|
| + Base::SendNoRtcpToRtcp();
|
| +}
|
| +
|
| +TEST_F(VoiceChannelDoubleThreadTest, SendRtcpToNoRtcp) {
|
| + Base::SendRtcpToNoRtcp();
|
| +}
|
| +
|
| TEST_F(VoiceChannelDoubleThreadTest, SendRtcpToRtcp) {
|
| Base::SendRtcpToRtcp();
|
| }
|
| @@ -2678,7 +2741,7 @@
|
|
|
| // Test that we can scale the output volume properly for 1:1 calls.
|
| TEST_F(VoiceChannelDoubleThreadTest, TestScaleVolume1to1Call) {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| double volume;
|
| @@ -2702,7 +2765,7 @@
|
|
|
| // Test that we can scale the output volume properly for multiway calls.
|
| TEST_F(VoiceChannelDoubleThreadTest, TestScaleVolumeMultiwayCall) {
|
| - CreateChannels(0, 0);
|
| + CreateChannels(RTCP, RTCP);
|
| EXPECT_TRUE(SendInitiate());
|
| EXPECT_TRUE(SendAccept());
|
| EXPECT_TRUE(AddStream1(1));
|
| @@ -2851,6 +2914,18 @@
|
| Base::SendRtpToRtp();
|
| }
|
|
|
| +TEST_F(VideoChannelSingleThreadTest, SendNoRtcpToNoRtcp) {
|
| + Base::SendNoRtcpToNoRtcp();
|
| +}
|
| +
|
| +TEST_F(VideoChannelSingleThreadTest, SendNoRtcpToRtcp) {
|
| + Base::SendNoRtcpToRtcp();
|
| +}
|
| +
|
| +TEST_F(VideoChannelSingleThreadTest, SendRtcpToNoRtcp) {
|
| + Base::SendRtcpToNoRtcp();
|
| +}
|
| +
|
| TEST_F(VideoChannelSingleThreadTest, SendRtcpToRtcp) {
|
| Base::SendRtcpToRtcp();
|
| }
|
| @@ -3083,6 +3158,18 @@
|
| Base::SendRtpToRtp();
|
| }
|
|
|
| +TEST_F(VideoChannelDoubleThreadTest, SendNoRtcpToNoRtcp) {
|
| + Base::SendNoRtcpToNoRtcp();
|
| +}
|
| +
|
| +TEST_F(VideoChannelDoubleThreadTest, SendNoRtcpToRtcp) {
|
| + Base::SendNoRtcpToRtcp();
|
| +}
|
| +
|
| +TEST_F(VideoChannelDoubleThreadTest, SendRtcpToNoRtcp) {
|
| + Base::SendRtcpToNoRtcp();
|
| +}
|
| +
|
| TEST_F(VideoChannelDoubleThreadTest, SendRtcpToRtcp) {
|
| Base::SendRtcpToRtcp();
|
| }
|
| @@ -3255,7 +3342,7 @@
|
| transport_controller ? transport_controller->signaling_thread() : nullptr;
|
| cricket::RtpDataChannel* channel = new cricket::RtpDataChannel(
|
| worker_thread, network_thread, signaling_thread, ch, cricket::CN_DATA,
|
| - (flags & RTCP_MUX_REQUIRED) != 0, (flags & SECURE) != 0);
|
| + (flags & RTCP) != 0, (flags & SECURE) != 0);
|
| rtc::CryptoOptions crypto_options;
|
| crypto_options.enable_gcm_crypto_suites = (flags & GCM_CIPHER) != 0;
|
| channel->SetCryptoOptions(crypto_options);
|
| @@ -3379,6 +3466,18 @@
|
| Base::SendRtpToRtp();
|
| }
|
|
|
| +TEST_F(RtpDataChannelSingleThreadTest, SendNoRtcpToNoRtcp) {
|
| + Base::SendNoRtcpToNoRtcp();
|
| +}
|
| +
|
| +TEST_F(RtpDataChannelSingleThreadTest, SendNoRtcpToRtcp) {
|
| + Base::SendNoRtcpToRtcp();
|
| +}
|
| +
|
| +TEST_F(RtpDataChannelSingleThreadTest, SendRtcpToNoRtcp) {
|
| + Base::SendRtcpToNoRtcp();
|
| +}
|
| +
|
| TEST_F(RtpDataChannelSingleThreadTest, SendRtcpToRtcp) {
|
| Base::SendRtcpToRtcp();
|
| }
|
| @@ -3509,6 +3608,18 @@
|
|
|
| TEST_F(RtpDataChannelDoubleThreadTest, SendRtpToRtp) {
|
| Base::SendRtpToRtp();
|
| +}
|
| +
|
| +TEST_F(RtpDataChannelDoubleThreadTest, SendNoRtcpToNoRtcp) {
|
| + Base::SendNoRtcpToNoRtcp();
|
| +}
|
| +
|
| +TEST_F(RtpDataChannelDoubleThreadTest, SendNoRtcpToRtcp) {
|
| + Base::SendNoRtcpToRtcp();
|
| +}
|
| +
|
| +TEST_F(RtpDataChannelDoubleThreadTest, SendRtcpToNoRtcp) {
|
| + Base::SendRtcpToNoRtcp();
|
| }
|
|
|
| TEST_F(RtpDataChannelDoubleThreadTest, SendRtcpToRtcp) {
|
|
|