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

Side by Side Diff: webrtc/pc/rtcpmuxfilter_unittest.cc

Issue 2260963002: Some cleanup in BaseChannel RTCP mux code. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Clarifying comment. Created 4 years, 4 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 unified diff | Download patch
« no previous file with comments | « webrtc/pc/rtcpmuxfilter.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2011 The WebRTC project authors. All Rights Reserved. 2 * Copyright 2011 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
75 EXPECT_TRUE(filter.DemuxRtcp(data, len)); 75 EXPECT_TRUE(filter.DemuxRtcp(data, len));
76 // Remote accepted, demux should be enabled. 76 // Remote accepted, demux should be enabled.
77 filter.SetAnswer(true, cricket::CS_REMOTE); 77 filter.SetAnswer(true, cricket::CS_REMOTE);
78 EXPECT_TRUE(filter.DemuxRtcp(data, len)); 78 EXPECT_TRUE(filter.DemuxRtcp(data, len));
79 } 79 }
80 80
81 TEST(RtcpMuxFilterTest, IsActiveSender) { 81 TEST(RtcpMuxFilterTest, IsActiveSender) {
82 cricket::RtcpMuxFilter filter; 82 cricket::RtcpMuxFilter filter;
83 // Init state - not active 83 // Init state - not active
84 EXPECT_FALSE(filter.IsActive()); 84 EXPECT_FALSE(filter.IsActive());
85 EXPECT_FALSE(filter.IsProvisionallyActive());
86 EXPECT_FALSE(filter.IsFullyActive());
85 // After sent offer, demux should not be active. 87 // After sent offer, demux should not be active.
86 filter.SetOffer(true, cricket::CS_LOCAL); 88 filter.SetOffer(true, cricket::CS_LOCAL);
87 EXPECT_FALSE(filter.IsActive()); 89 EXPECT_FALSE(filter.IsActive());
90 EXPECT_FALSE(filter.IsProvisionallyActive());
91 EXPECT_FALSE(filter.IsFullyActive());
88 // Remote accepted, filter is now active. 92 // Remote accepted, filter is now active.
89 filter.SetAnswer(true, cricket::CS_REMOTE); 93 filter.SetAnswer(true, cricket::CS_REMOTE);
90 EXPECT_TRUE(filter.IsActive()); 94 EXPECT_TRUE(filter.IsActive());
95 EXPECT_FALSE(filter.IsProvisionallyActive());
96 EXPECT_TRUE(filter.IsFullyActive());
91 } 97 }
92 98
93 // Test that we can receive provisional answer and final answer. 99 // Test that we can receive provisional answer and final answer.
94 TEST(RtcpMuxFilterTest, ReceivePrAnswer) { 100 TEST(RtcpMuxFilterTest, ReceivePrAnswer) {
95 cricket::RtcpMuxFilter filter; 101 cricket::RtcpMuxFilter filter;
96 filter.SetOffer(true, cricket::CS_LOCAL); 102 filter.SetOffer(true, cricket::CS_LOCAL);
97 // Received provisional answer with mux enabled. 103 // Received provisional answer with mux enabled.
98 EXPECT_TRUE(filter.SetProvisionalAnswer(true, cricket::CS_REMOTE)); 104 EXPECT_TRUE(filter.SetProvisionalAnswer(true, cricket::CS_REMOTE));
99 // We are now active since both sender and receiver support mux. 105 // We are now provisionally active since both sender and receiver support mux.
100 EXPECT_TRUE(filter.IsActive()); 106 EXPECT_TRUE(filter.IsActive());
107 EXPECT_TRUE(filter.IsProvisionallyActive());
108 EXPECT_FALSE(filter.IsFullyActive());
101 // Received provisional answer with mux disabled. 109 // Received provisional answer with mux disabled.
102 EXPECT_TRUE(filter.SetProvisionalAnswer(false, cricket::CS_REMOTE)); 110 EXPECT_TRUE(filter.SetProvisionalAnswer(false, cricket::CS_REMOTE));
103 // We are now inactive since the receiver doesn't support mux. 111 // We are now inactive since the receiver doesn't support mux.
104 EXPECT_FALSE(filter.IsActive()); 112 EXPECT_FALSE(filter.IsActive());
113 EXPECT_FALSE(filter.IsProvisionallyActive());
114 EXPECT_FALSE(filter.IsFullyActive());
105 // Received final answer with mux enabled. 115 // Received final answer with mux enabled.
106 EXPECT_TRUE(filter.SetAnswer(true, cricket::CS_REMOTE)); 116 EXPECT_TRUE(filter.SetAnswer(true, cricket::CS_REMOTE));
107 EXPECT_TRUE(filter.IsActive()); 117 EXPECT_TRUE(filter.IsActive());
118 EXPECT_FALSE(filter.IsProvisionallyActive());
119 EXPECT_TRUE(filter.IsFullyActive());
108 } 120 }
109 121
110 TEST(RtcpMuxFilterTest, IsActiveReceiver) { 122 TEST(RtcpMuxFilterTest, IsActiveReceiver) {
111 cricket::RtcpMuxFilter filter; 123 cricket::RtcpMuxFilter filter;
112 // Init state - not active. 124 // Init state - not active.
113 EXPECT_FALSE(filter.IsActive()); 125 EXPECT_FALSE(filter.IsActive());
126 EXPECT_FALSE(filter.IsProvisionallyActive());
127 EXPECT_FALSE(filter.IsFullyActive());
114 // After received offer, demux should not be active 128 // After received offer, demux should not be active
115 filter.SetOffer(true, cricket::CS_REMOTE); 129 filter.SetOffer(true, cricket::CS_REMOTE);
116 EXPECT_FALSE(filter.IsActive()); 130 EXPECT_FALSE(filter.IsActive());
131 EXPECT_FALSE(filter.IsProvisionallyActive());
132 EXPECT_FALSE(filter.IsFullyActive());
117 // We accept, filter is now active 133 // We accept, filter is now active
118 filter.SetAnswer(true, cricket::CS_LOCAL); 134 filter.SetAnswer(true, cricket::CS_LOCAL);
119 EXPECT_TRUE(filter.IsActive()); 135 EXPECT_TRUE(filter.IsActive());
136 EXPECT_FALSE(filter.IsProvisionallyActive());
137 EXPECT_TRUE(filter.IsFullyActive());
120 } 138 }
121 139
122 // Test that we can send provisional answer and final answer. 140 // Test that we can send provisional answer and final answer.
123 TEST(RtcpMuxFilterTest, SendPrAnswer) { 141 TEST(RtcpMuxFilterTest, SendPrAnswer) {
124 cricket::RtcpMuxFilter filter; 142 cricket::RtcpMuxFilter filter;
125 filter.SetOffer(true, cricket::CS_REMOTE); 143 filter.SetOffer(true, cricket::CS_REMOTE);
126 // Send provisional answer with mux enabled. 144 // Send provisional answer with mux enabled.
127 EXPECT_TRUE(filter.SetProvisionalAnswer(true, cricket::CS_LOCAL)); 145 EXPECT_TRUE(filter.SetProvisionalAnswer(true, cricket::CS_LOCAL));
128 EXPECT_TRUE(filter.IsActive()); 146 EXPECT_TRUE(filter.IsActive());
147 EXPECT_TRUE(filter.IsProvisionallyActive());
148 EXPECT_FALSE(filter.IsFullyActive());
129 // Received provisional answer with mux disabled. 149 // Received provisional answer with mux disabled.
130 EXPECT_TRUE(filter.SetProvisionalAnswer(false, cricket::CS_LOCAL)); 150 EXPECT_TRUE(filter.SetProvisionalAnswer(false, cricket::CS_LOCAL));
131 EXPECT_FALSE(filter.IsActive()); 151 EXPECT_FALSE(filter.IsActive());
152 EXPECT_FALSE(filter.IsProvisionallyActive());
153 EXPECT_FALSE(filter.IsFullyActive());
132 // Send final answer with mux enabled. 154 // Send final answer with mux enabled.
133 EXPECT_TRUE(filter.SetAnswer(true, cricket::CS_LOCAL)); 155 EXPECT_TRUE(filter.SetAnswer(true, cricket::CS_LOCAL));
134 EXPECT_TRUE(filter.IsActive()); 156 EXPECT_TRUE(filter.IsActive());
157 EXPECT_FALSE(filter.IsProvisionallyActive());
158 EXPECT_TRUE(filter.IsFullyActive());
135 } 159 }
136 160
137 // Test that we can enable the filter in an update. 161 // Test that we can enable the filter in an update.
138 // We can not disable the filter later since that would mean we need to 162 // We can not disable the filter later since that would mean we need to
139 // recreate a rtcp transport channel. 163 // recreate a rtcp transport channel.
140 TEST(RtcpMuxFilterTest, EnableFilterDuringUpdate) { 164 TEST(RtcpMuxFilterTest, EnableFilterDuringUpdate) {
141 cricket::RtcpMuxFilter filter; 165 cricket::RtcpMuxFilter filter;
142 EXPECT_FALSE(filter.IsActive()); 166 EXPECT_FALSE(filter.IsActive());
143 EXPECT_TRUE(filter.SetOffer(false, cricket::CS_REMOTE)); 167 EXPECT_TRUE(filter.SetOffer(false, cricket::CS_REMOTE));
144 EXPECT_TRUE(filter.SetAnswer(false, cricket::CS_LOCAL)); 168 EXPECT_TRUE(filter.SetAnswer(false, cricket::CS_LOCAL));
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
228 EXPECT_FALSE(filter.SetProvisionalAnswer(false, cricket::CS_LOCAL)); 252 EXPECT_FALSE(filter.SetProvisionalAnswer(false, cricket::CS_LOCAL));
229 EXPECT_TRUE(filter.IsActive()); 253 EXPECT_TRUE(filter.IsActive());
230 EXPECT_TRUE(filter.SetProvisionalAnswer(true, cricket::CS_LOCAL)); 254 EXPECT_TRUE(filter.SetProvisionalAnswer(true, cricket::CS_LOCAL));
231 EXPECT_TRUE(filter.IsActive()); 255 EXPECT_TRUE(filter.IsActive());
232 256
233 EXPECT_FALSE(filter.SetAnswer(false, cricket::CS_LOCAL)); 257 EXPECT_FALSE(filter.SetAnswer(false, cricket::CS_LOCAL));
234 EXPECT_TRUE(filter.IsActive()); 258 EXPECT_TRUE(filter.IsActive());
235 EXPECT_TRUE(filter.SetAnswer(true, cricket::CS_LOCAL)); 259 EXPECT_TRUE(filter.SetAnswer(true, cricket::CS_LOCAL));
236 EXPECT_TRUE(filter.IsActive()); 260 EXPECT_TRUE(filter.IsActive());
237 } 261 }
OLDNEW
« no previous file with comments | « webrtc/pc/rtcpmuxfilter.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698