Index: talk/session/media/channel_unittest.cc |
diff --git a/talk/session/media/channel_unittest.cc b/talk/session/media/channel_unittest.cc |
index d6e259d31e58e0fbc8932a179639269f9d1ac7b5..70e68f385b888afa4c83588166bf6f2d3d8d4f93 100644 |
--- a/talk/session/media/channel_unittest.cc |
+++ b/talk/session/media/channel_unittest.cc |
@@ -126,11 +126,13 @@ class ChannelTest : public testing::Test, public sigslot::has_slots<> { |
enum Flags { RTCP = 0x1, RTCP_MUX = 0x2, SECURE = 0x4, SSRC_MUX = 0x8, |
DTLS = 0x10 }; |
- ChannelTest(const uint8* rtp_data, |
+ ChannelTest(bool verify_playout, |
+ const uint8* rtp_data, |
int rtp_len, |
const uint8* rtcp_data, |
int rtcp_len) |
- : transport_controller1_(cricket::ICEROLE_CONTROLLING), |
+ : verify_playout_(verify_playout), |
+ transport_controller1_(cricket::ICEROLE_CONTROLLING), |
transport_controller2_(cricket::ICEROLE_CONTROLLED), |
media_channel1_(NULL), |
media_channel2_(NULL), |
@@ -489,7 +491,8 @@ class ChannelTest : public testing::Test, public sigslot::has_slots<> { |
CreateChannels(0, 0); |
EXPECT_FALSE(channel1_->secure()); |
EXPECT_FALSE(media_channel1_->sending()); |
- EXPECT_FALSE(media_channel1_->playout()); |
+ if (verify_playout_) |
pthatcher1
2015/09/24 16:46:52
{}s
pbos-webrtc
2015/09/24 16:53:44
Done, woo!
|
+ EXPECT_FALSE(media_channel1_->playout()); |
EXPECT_TRUE(media_channel1_->codecs().empty()); |
EXPECT_TRUE(media_channel1_->recv_streams().empty()); |
EXPECT_TRUE(media_channel1_->rtp_packets().empty()); |
@@ -816,36 +819,46 @@ class ChannelTest : public testing::Test, public sigslot::has_slots<> { |
// Test that we only start playout and sending at the right times. |
void TestPlayoutAndSendingStates() { |
CreateChannels(0, 0); |
- EXPECT_FALSE(media_channel1_->playout()); |
+ if (verify_playout_) |
+ EXPECT_FALSE(media_channel1_->playout()); |
EXPECT_FALSE(media_channel1_->sending()); |
- EXPECT_FALSE(media_channel2_->playout()); |
+ if (verify_playout_) |
+ EXPECT_FALSE(media_channel2_->playout()); |
EXPECT_FALSE(media_channel2_->sending()); |
EXPECT_TRUE(channel1_->Enable(true)); |
- EXPECT_FALSE(media_channel1_->playout()); |
+ if (verify_playout_) |
+ EXPECT_FALSE(media_channel1_->playout()); |
EXPECT_FALSE(media_channel1_->sending()); |
EXPECT_TRUE(channel1_->SetLocalContent(&local_media_content1_, |
CA_OFFER, NULL)); |
- EXPECT_TRUE(media_channel1_->playout()); |
+ if (verify_playout_) |
+ EXPECT_TRUE(media_channel1_->playout()); |
EXPECT_FALSE(media_channel1_->sending()); |
EXPECT_TRUE(channel2_->SetRemoteContent(&local_media_content1_, |
CA_OFFER, NULL)); |
- EXPECT_FALSE(media_channel2_->playout()); |
+ if (verify_playout_) |
+ EXPECT_FALSE(media_channel2_->playout()); |
EXPECT_FALSE(media_channel2_->sending()); |
EXPECT_TRUE(channel2_->SetLocalContent(&local_media_content2_, |
CA_ANSWER, NULL)); |
- EXPECT_FALSE(media_channel2_->playout()); |
+ if (verify_playout_) |
+ EXPECT_FALSE(media_channel2_->playout()); |
EXPECT_FALSE(media_channel2_->sending()); |
transport_controller1_.Connect(&transport_controller2_); |
- EXPECT_TRUE(media_channel1_->playout()); |
+ if (verify_playout_) |
+ EXPECT_TRUE(media_channel1_->playout()); |
EXPECT_FALSE(media_channel1_->sending()); |
- EXPECT_FALSE(media_channel2_->playout()); |
+ if (verify_playout_) |
+ EXPECT_FALSE(media_channel2_->playout()); |
EXPECT_FALSE(media_channel2_->sending()); |
EXPECT_TRUE(channel2_->Enable(true)); |
- EXPECT_TRUE(media_channel2_->playout()); |
+ if (verify_playout_) |
+ EXPECT_TRUE(media_channel2_->playout()); |
EXPECT_TRUE(media_channel2_->sending()); |
EXPECT_TRUE(channel1_->SetRemoteContent(&local_media_content2_, |
CA_ANSWER, NULL)); |
- EXPECT_TRUE(media_channel1_->playout()); |
+ if (verify_playout_) |
+ EXPECT_TRUE(media_channel1_->playout()); |
EXPECT_TRUE(media_channel1_->sending()); |
} |
@@ -862,9 +875,11 @@ class ChannelTest : public testing::Test, public sigslot::has_slots<> { |
EXPECT_TRUE(channel1_->Enable(true)); |
EXPECT_TRUE(channel2_->Enable(true)); |
- EXPECT_FALSE(media_channel1_->playout()); |
+ if (verify_playout_) |
+ EXPECT_FALSE(media_channel1_->playout()); |
EXPECT_FALSE(media_channel1_->sending()); |
- EXPECT_FALSE(media_channel2_->playout()); |
+ if (verify_playout_) |
+ EXPECT_FALSE(media_channel2_->playout()); |
EXPECT_FALSE(media_channel2_->sending()); |
EXPECT_TRUE(channel1_->SetLocalContent(&content1, CA_OFFER, NULL)); |
@@ -873,9 +888,11 @@ class ChannelTest : public testing::Test, public sigslot::has_slots<> { |
EXPECT_TRUE(channel1_->SetRemoteContent(&content2, CA_PRANSWER, NULL)); |
transport_controller1_.Connect(&transport_controller2_); |
- EXPECT_TRUE(media_channel1_->playout()); |
+ if (verify_playout_) |
+ EXPECT_TRUE(media_channel1_->playout()); |
EXPECT_FALSE(media_channel1_->sending()); // remote InActive |
- EXPECT_FALSE(media_channel2_->playout()); // local InActive |
+ if (verify_playout_) |
+ EXPECT_FALSE(media_channel2_->playout()); // local InActive |
EXPECT_FALSE(media_channel2_->sending()); // local InActive |
// Update |content2| to be RecvOnly. |
@@ -883,9 +900,11 @@ class ChannelTest : public testing::Test, public sigslot::has_slots<> { |
EXPECT_TRUE(channel2_->SetLocalContent(&content2, CA_PRANSWER, NULL)); |
EXPECT_TRUE(channel1_->SetRemoteContent(&content2, CA_PRANSWER, NULL)); |
- EXPECT_TRUE(media_channel1_->playout()); |
+ if (verify_playout_) |
+ EXPECT_TRUE(media_channel1_->playout()); |
EXPECT_TRUE(media_channel1_->sending()); |
- EXPECT_TRUE(media_channel2_->playout()); // local RecvOnly |
+ if (verify_playout_) |
+ EXPECT_TRUE(media_channel2_->playout()); // local RecvOnly |
EXPECT_FALSE(media_channel2_->sending()); // local RecvOnly |
// Update |content2| to be SendRecv. |
@@ -893,9 +912,11 @@ class ChannelTest : public testing::Test, public sigslot::has_slots<> { |
EXPECT_TRUE(channel2_->SetLocalContent(&content2, CA_ANSWER, NULL)); |
EXPECT_TRUE(channel1_->SetRemoteContent(&content2, CA_ANSWER, NULL)); |
- EXPECT_TRUE(media_channel1_->playout()); |
+ if (verify_playout_) |
+ EXPECT_TRUE(media_channel1_->playout()); |
EXPECT_TRUE(media_channel1_->sending()); |
- EXPECT_TRUE(media_channel2_->playout()); |
+ if (verify_playout_) |
+ EXPECT_TRUE(media_channel2_->playout()); |
EXPECT_TRUE(media_channel2_->sending()); |
} |
@@ -904,13 +925,15 @@ class ChannelTest : public testing::Test, public sigslot::has_slots<> { |
CreateChannels(0, 0); |
EXPECT_FALSE(channel1_->secure()); |
EXPECT_TRUE(SendInitiate()); |
- EXPECT_TRUE(media_channel1_->playout()); |
+ if (verify_playout_) |
+ EXPECT_TRUE(media_channel1_->playout()); |
EXPECT_FALSE(media_channel1_->sending()); |
EXPECT_TRUE(SendAccept()); |
EXPECT_FALSE(channel1_->secure()); |
EXPECT_TRUE(media_channel1_->sending()); |
EXPECT_EQ(1U, media_channel1_->codecs().size()); |
- EXPECT_TRUE(media_channel2_->playout()); |
+ if (verify_playout_) |
+ EXPECT_TRUE(media_channel2_->playout()); |
EXPECT_TRUE(media_channel2_->sending()); |
EXPECT_EQ(1U, media_channel2_->codecs().size()); |
} |
@@ -1738,6 +1761,9 @@ class ChannelTest : public testing::Test, public sigslot::has_slots<> { |
} |
protected: |
+ // TODO(pbos): Remove playout from media engines, muting should be controlled |
+ // by the renderer. |
+ const bool verify_playout_; |
cricket::FakeTransportController transport_controller1_; |
cricket::FakeTransportController transport_controller2_; |
cricket::FakeMediaEngine media_engine_; |
@@ -1801,8 +1827,11 @@ class VoiceChannelTest |
public: |
typedef ChannelTest<VoiceTraits> Base; |
VoiceChannelTest() |
- : Base(kPcmuFrame, sizeof(kPcmuFrame), kRtcpReport, sizeof(kRtcpReport)) { |
- } |
+ : Base(true, |
+ kPcmuFrame, |
+ sizeof(kPcmuFrame), |
+ kRtcpReport, |
+ sizeof(kRtcpReport)) {} |
}; |
// override to add NULL parameter |
@@ -1868,7 +1897,8 @@ class VideoChannelTest |
public: |
typedef ChannelTest<VideoTraits> Base; |
VideoChannelTest() |
- : Base(kH264Packet, |
+ : Base(false, |
+ kH264Packet, |
sizeof(kH264Packet), |
kRtcpReport, |
sizeof(kRtcpReport)) {} |
@@ -2556,9 +2586,12 @@ class DataChannelTest |
public: |
typedef ChannelTest<DataTraits> |
Base; |
- DataChannelTest() : Base(kDataPacket, sizeof(kDataPacket), |
- kRtcpReport, sizeof(kRtcpReport)) { |
- } |
+ DataChannelTest() |
+ : Base(true, |
+ kDataPacket, |
+ sizeof(kDataPacket), |
+ kRtcpReport, |
+ sizeof(kRtcpReport)) {} |
}; |
// Override to avoid engine channel parameter. |