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

Side by Side Diff: net/quic/core/quic_multipath_sent_packet_manager_test.cc

Issue 2249813002: Create EXPECT_QUIC_BUG macro, and modify QUIC tests to use it. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "net/quic/core/quic_multipath_sent_packet_manager.h" 5 #include "net/quic/core/quic_multipath_sent_packet_manager.h"
6 6
7 #include "net/quic/core/quic_bug_tracker.h" 7 #include "net/quic/core/quic_bug_tracker.h"
8 #include "net/quic/test_tools/quic_multipath_sent_packet_manager_peer.h" 8 #include "net/quic/test_tools/quic_multipath_sent_packet_manager_peer.h"
9 #include "net/quic/test_tools/quic_test_utils.h" 9 #include "net/quic/test_tools/quic_test_utils.h"
10 #include "net/test/gtest_util.h" 10 #include "net/test/gtest_util.h"
(...skipping 18 matching lines...) Expand all
29 QuicMultipathSentPacketManagerTest() 29 QuicMultipathSentPacketManagerTest()
30 : manager_0_(new StrictMock<MockSentPacketManager>), 30 : manager_0_(new StrictMock<MockSentPacketManager>),
31 manager_1_(new StrictMock<MockSentPacketManager>), 31 manager_1_(new StrictMock<MockSentPacketManager>),
32 manager_2_(new StrictMock<MockSentPacketManager>), 32 manager_2_(new StrictMock<MockSentPacketManager>),
33 multipath_manager_(manager_0_, &delegate_) { 33 multipath_manager_(manager_0_, &delegate_) {
34 // Paths 0 and 1 are active, and path 2 is closing. 34 // Paths 0 and 1 are active, and path 2 is closing.
35 QuicMultipathSentPacketManagerPeer::AddPathWithActiveState( 35 QuicMultipathSentPacketManagerPeer::AddPathWithActiveState(
36 &multipath_manager_, manager_1_); 36 &multipath_manager_, manager_1_);
37 QuicMultipathSentPacketManagerPeer::AddPathWithCloseState( 37 QuicMultipathSentPacketManagerPeer::AddPathWithCloseState(
38 &multipath_manager_, manager_2_); 38 &multipath_manager_, manager_2_);
39 FLAGS_quic_always_log_bugs_for_tests = true;
40 } 39 }
41 40
42 ~QuicMultipathSentPacketManagerTest() override {} 41 ~QuicMultipathSentPacketManagerTest() override {}
43 42
44 MockSentPacketManager* manager_0_; 43 MockSentPacketManager* manager_0_;
45 MockSentPacketManager* manager_1_; 44 MockSentPacketManager* manager_1_;
46 MockSentPacketManager* manager_2_; 45 MockSentPacketManager* manager_2_;
47 QuicMultipathSentPacketManager multipath_manager_; 46 QuicMultipathSentPacketManager multipath_manager_;
48 MockClock clock_; 47 MockClock clock_;
49 StrictMock<MockConnectionCloseDelegate> delegate_; 48 StrictMock<MockConnectionCloseDelegate> delegate_;
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 EXPECT_TRUE(multipath_manager_.HasUnackedPackets()); 148 EXPECT_TRUE(multipath_manager_.HasUnackedPackets());
150 } 149 }
151 150
152 TEST_F(QuicMultipathSentPacketManagerTest, GetLeastUnacked) { 151 TEST_F(QuicMultipathSentPacketManagerTest, GetLeastUnacked) {
153 EXPECT_CALL(*manager_0_, GetLeastUnacked(kDefaultPathId)).WillOnce(Return(2)); 152 EXPECT_CALL(*manager_0_, GetLeastUnacked(kDefaultPathId)).WillOnce(Return(2));
154 EXPECT_CALL(*manager_1_, GetLeastUnacked(kTestPathId1)).WillOnce(Return(3)); 153 EXPECT_CALL(*manager_1_, GetLeastUnacked(kTestPathId1)).WillOnce(Return(3));
155 EXPECT_CALL(*manager_2_, GetLeastUnacked(kTestPathId2)).WillOnce(Return(4)); 154 EXPECT_CALL(*manager_2_, GetLeastUnacked(kTestPathId2)).WillOnce(Return(4));
156 EXPECT_EQ(2u, multipath_manager_.GetLeastUnacked(kDefaultPathId)); 155 EXPECT_EQ(2u, multipath_manager_.GetLeastUnacked(kDefaultPathId));
157 EXPECT_EQ(3u, multipath_manager_.GetLeastUnacked(kTestPathId1)); 156 EXPECT_EQ(3u, multipath_manager_.GetLeastUnacked(kTestPathId1));
158 EXPECT_EQ(4u, multipath_manager_.GetLeastUnacked(kTestPathId2)); 157 EXPECT_EQ(4u, multipath_manager_.GetLeastUnacked(kTestPathId2));
159 EXPECT_DFATAL(multipath_manager_.GetLeastUnacked(kTestPathId3), ""); 158 EXPECT_QUIC_BUG(multipath_manager_.GetLeastUnacked(kTestPathId3), "");
160 } 159 }
161 160
162 TEST_F(QuicMultipathSentPacketManagerTest, OnPacketSent) { 161 TEST_F(QuicMultipathSentPacketManagerTest, OnPacketSent) {
163 SerializedPacket packet0(kDefaultPathId, 1, PACKET_6BYTE_PACKET_NUMBER, 162 SerializedPacket packet0(kDefaultPathId, 1, PACKET_6BYTE_PACKET_NUMBER,
164 nullptr, 1250, 0u, false, false); 163 nullptr, 1250, 0u, false, false);
165 SerializedPacket packet1(kTestPathId1, 1, PACKET_6BYTE_PACKET_NUMBER, nullptr, 164 SerializedPacket packet1(kTestPathId1, 1, PACKET_6BYTE_PACKET_NUMBER, nullptr,
166 1250, 0u, false, false); 165 1250, 0u, false, false);
167 SerializedPacket packet2(kTestPathId2, 1, PACKET_6BYTE_PACKET_NUMBER, nullptr, 166 SerializedPacket packet2(kTestPathId2, 1, PACKET_6BYTE_PACKET_NUMBER, nullptr,
168 1250, 0u, false, false); 167 1250, 0u, false, false);
169 SerializedPacket packet3(kTestPathId3, 1, PACKET_6BYTE_PACKET_NUMBER, nullptr, 168 SerializedPacket packet3(kTestPathId3, 1, PACKET_6BYTE_PACKET_NUMBER, nullptr,
170 1250, 0u, false, false); 169 1250, 0u, false, false);
171 EXPECT_CALL(*manager_0_, 170 EXPECT_CALL(*manager_0_,
172 OnPacketSent(&packet0, kInvalidPathId, 0, clock_.Now(), 171 OnPacketSent(&packet0, kInvalidPathId, 0, clock_.Now(),
173 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA)); 172 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA));
174 multipath_manager_.OnPacketSent(&packet0, kInvalidPathId, 0, clock_.Now(), 173 multipath_manager_.OnPacketSent(&packet0, kInvalidPathId, 0, clock_.Now(),
175 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA); 174 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA);
176 EXPECT_CALL(*manager_1_, 175 EXPECT_CALL(*manager_1_,
177 OnPacketSent(&packet1, kInvalidPathId, 0, clock_.Now(), 176 OnPacketSent(&packet1, kInvalidPathId, 0, clock_.Now(),
178 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA)); 177 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA));
179 multipath_manager_.OnPacketSent(&packet1, kInvalidPathId, 0, clock_.Now(), 178 multipath_manager_.OnPacketSent(&packet1, kInvalidPathId, 0, clock_.Now(),
180 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA); 179 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA);
181 EXPECT_CALL(*manager_2_, OnPacketSent(_, _, _, _, _, _)).Times(0); 180 EXPECT_CALL(*manager_2_, OnPacketSent(_, _, _, _, _, _)).Times(0);
182 EXPECT_CALL(delegate_, 181 EXPECT_CALL(delegate_,
183 OnUnrecoverableError(QUIC_MULTIPATH_PATH_NOT_ACTIVE, _, _)); 182 OnUnrecoverableError(QUIC_MULTIPATH_PATH_NOT_ACTIVE, _, _));
184 EXPECT_DFATAL(multipath_manager_.OnPacketSent( 183 EXPECT_QUIC_BUG(multipath_manager_.OnPacketSent(
185 &packet2, kInvalidPathId, 0, clock_.Now(), 184 &packet2, kInvalidPathId, 0, clock_.Now(),
186 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA), 185 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA),
187 ""); 186 "");
188 EXPECT_CALL(delegate_, 187 EXPECT_CALL(delegate_,
189 OnUnrecoverableError(QUIC_MULTIPATH_PATH_DOES_NOT_EXIST, _, _)); 188 OnUnrecoverableError(QUIC_MULTIPATH_PATH_DOES_NOT_EXIST, _, _));
190 EXPECT_DFATAL(multipath_manager_.OnPacketSent( 189 EXPECT_QUIC_BUG(multipath_manager_.OnPacketSent(
191 &packet3, kInvalidPathId, 0, clock_.Now(), 190 &packet3, kInvalidPathId, 0, clock_.Now(),
192 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA), 191 NOT_RETRANSMISSION, HAS_RETRANSMITTABLE_DATA),
193 ""); 192 "");
194 } 193 }
195 194
196 TEST_F(QuicMultipathSentPacketManagerTest, OnRetransmissionTimeout) { 195 TEST_F(QuicMultipathSentPacketManagerTest, OnRetransmissionTimeout) {
197 QuicTime time0 = clock_.Now() + QuicTime::Delta::FromMilliseconds(50); 196 QuicTime time0 = clock_.Now() + QuicTime::Delta::FromMilliseconds(50);
198 QuicTime time1 = clock_.Now() + QuicTime::Delta::FromMilliseconds(100); 197 QuicTime time1 = clock_.Now() + QuicTime::Delta::FromMilliseconds(100);
199 EXPECT_CALL(*manager_0_, GetRetransmissionTime()).WillOnce(Return(time0)); 198 EXPECT_CALL(*manager_0_, GetRetransmissionTime()).WillOnce(Return(time0));
200 EXPECT_CALL(*manager_1_, GetRetransmissionTime()).WillOnce(Return(time1)); 199 EXPECT_CALL(*manager_1_, GetRetransmissionTime()).WillOnce(Return(time1));
201 EXPECT_CALL(*manager_0_, OnRetransmissionTimeout()); 200 EXPECT_CALL(*manager_0_, OnRetransmissionTimeout());
202 multipath_manager_.OnRetransmissionTimeout(); 201 multipath_manager_.OnRetransmissionTimeout();
203 } 202 }
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 EXPECT_CALL(*manager_2_, CancelRetransmissionsForStream(1)); 260 EXPECT_CALL(*manager_2_, CancelRetransmissionsForStream(1));
262 multipath_manager_.CancelRetransmissionsForStream(1); 261 multipath_manager_.CancelRetransmissionsForStream(1);
263 } 262 }
264 263
265 TEST_F(QuicMultipathSentPacketManagerTest, OnConnectionMigration) { 264 TEST_F(QuicMultipathSentPacketManagerTest, OnConnectionMigration) {
266 EXPECT_CALL(*manager_0_, OnConnectionMigration(kDefaultPathId, PORT_CHANGE)); 265 EXPECT_CALL(*manager_0_, OnConnectionMigration(kDefaultPathId, PORT_CHANGE));
267 EXPECT_CALL(*manager_2_, OnConnectionMigration(_, _)).Times(0); 266 EXPECT_CALL(*manager_2_, OnConnectionMigration(_, _)).Times(0);
268 multipath_manager_.OnConnectionMigration(kDefaultPathId, PORT_CHANGE); 267 multipath_manager_.OnConnectionMigration(kDefaultPathId, PORT_CHANGE);
269 EXPECT_CALL(delegate_, 268 EXPECT_CALL(delegate_,
270 OnUnrecoverableError(QUIC_MULTIPATH_PATH_NOT_ACTIVE, _, _)); 269 OnUnrecoverableError(QUIC_MULTIPATH_PATH_NOT_ACTIVE, _, _));
271 EXPECT_DFATAL( 270 EXPECT_QUIC_BUG(
272 multipath_manager_.OnConnectionMigration(kTestPathId2, PORT_CHANGE), ""); 271 multipath_manager_.OnConnectionMigration(kTestPathId2, PORT_CHANGE), "");
273 EXPECT_CALL(delegate_, 272 EXPECT_CALL(delegate_,
274 OnUnrecoverableError(QUIC_MULTIPATH_PATH_DOES_NOT_EXIST, _, _)); 273 OnUnrecoverableError(QUIC_MULTIPATH_PATH_DOES_NOT_EXIST, _, _));
275 EXPECT_DFATAL( 274 EXPECT_QUIC_BUG(
276 multipath_manager_.OnConnectionMigration(kTestPathId3, PORT_CHANGE), ""); 275 multipath_manager_.OnConnectionMigration(kTestPathId3, PORT_CHANGE), "");
277 } 276 }
278 277
279 TEST_F(QuicMultipathSentPacketManagerTest, IsHandshakeConfirmed) { 278 TEST_F(QuicMultipathSentPacketManagerTest, IsHandshakeConfirmed) {
280 EXPECT_CALL(*manager_0_, IsHandshakeConfirmed()).WillOnce(Return(true)); 279 EXPECT_CALL(*manager_0_, IsHandshakeConfirmed()).WillOnce(Return(true));
281 EXPECT_TRUE(multipath_manager_.IsHandshakeConfirmed()); 280 EXPECT_TRUE(multipath_manager_.IsHandshakeConfirmed());
282 } 281 }
283 282
284 TEST_F(QuicMultipathSentPacketManagerTest, SetDebugDelegate) { 283 TEST_F(QuicMultipathSentPacketManagerTest, SetDebugDelegate) {
285 EXPECT_CALL(*manager_0_, SetDebugDelegate(nullptr)); 284 EXPECT_CALL(*manager_0_, SetDebugDelegate(nullptr));
286 EXPECT_CALL(*manager_1_, SetDebugDelegate(nullptr)); 285 EXPECT_CALL(*manager_1_, SetDebugDelegate(nullptr));
287 EXPECT_CALL(*manager_2_, SetDebugDelegate(nullptr)); 286 EXPECT_CALL(*manager_2_, SetDebugDelegate(nullptr));
288 multipath_manager_.SetDebugDelegate(nullptr); 287 multipath_manager_.SetDebugDelegate(nullptr);
289 } 288 }
290 289
291 TEST_F(QuicMultipathSentPacketManagerTest, GetLargestObserved) { 290 TEST_F(QuicMultipathSentPacketManagerTest, GetLargestObserved) {
292 EXPECT_CALL(*manager_0_, GetLargestObserved(kDefaultPathId)) 291 EXPECT_CALL(*manager_0_, GetLargestObserved(kDefaultPathId))
293 .WillOnce(Return(10)); 292 .WillOnce(Return(10));
294 EXPECT_CALL(*manager_1_, GetLargestObserved(kTestPathId1)) 293 EXPECT_CALL(*manager_1_, GetLargestObserved(kTestPathId1))
295 .WillOnce(Return(11)); 294 .WillOnce(Return(11));
296 EXPECT_CALL(*manager_2_, GetLargestObserved(kTestPathId2)) 295 EXPECT_CALL(*manager_2_, GetLargestObserved(kTestPathId2))
297 .WillOnce(Return(12)); 296 .WillOnce(Return(12));
298 EXPECT_EQ(10u, multipath_manager_.GetLargestObserved(kDefaultPathId)); 297 EXPECT_EQ(10u, multipath_manager_.GetLargestObserved(kDefaultPathId));
299 EXPECT_EQ(11u, multipath_manager_.GetLargestObserved(kTestPathId1)); 298 EXPECT_EQ(11u, multipath_manager_.GetLargestObserved(kTestPathId1));
300 EXPECT_EQ(12u, multipath_manager_.GetLargestObserved(kTestPathId2)); 299 EXPECT_EQ(12u, multipath_manager_.GetLargestObserved(kTestPathId2));
301 EXPECT_DFATAL(multipath_manager_.GetLargestObserved(kTestPathId3), ""); 300 EXPECT_QUIC_BUG(multipath_manager_.GetLargestObserved(kTestPathId3), "");
302 } 301 }
303 302
304 TEST_F(QuicMultipathSentPacketManagerTest, GetLargestSentPacket) { 303 TEST_F(QuicMultipathSentPacketManagerTest, GetLargestSentPacket) {
305 EXPECT_CALL(*manager_0_, GetLargestSentPacket(kDefaultPathId)) 304 EXPECT_CALL(*manager_0_, GetLargestSentPacket(kDefaultPathId))
306 .WillOnce(Return(10)); 305 .WillOnce(Return(10));
307 EXPECT_CALL(*manager_1_, GetLargestSentPacket(kTestPathId1)) 306 EXPECT_CALL(*manager_1_, GetLargestSentPacket(kTestPathId1))
308 .WillOnce(Return(11)); 307 .WillOnce(Return(11));
309 EXPECT_CALL(*manager_2_, GetLargestSentPacket(kTestPathId2)) 308 EXPECT_CALL(*manager_2_, GetLargestSentPacket(kTestPathId2))
310 .WillOnce(Return(12)); 309 .WillOnce(Return(12));
311 EXPECT_EQ(10u, multipath_manager_.GetLargestSentPacket(kDefaultPathId)); 310 EXPECT_EQ(10u, multipath_manager_.GetLargestSentPacket(kDefaultPathId));
312 EXPECT_EQ(11u, multipath_manager_.GetLargestSentPacket(kTestPathId1)); 311 EXPECT_EQ(11u, multipath_manager_.GetLargestSentPacket(kTestPathId1));
313 EXPECT_EQ(12u, multipath_manager_.GetLargestSentPacket(kTestPathId2)); 312 EXPECT_EQ(12u, multipath_manager_.GetLargestSentPacket(kTestPathId2));
314 EXPECT_DFATAL(multipath_manager_.GetLargestSentPacket(kTestPathId3), ""); 313 EXPECT_QUIC_BUG(multipath_manager_.GetLargestSentPacket(kTestPathId3), "");
315 } 314 }
316 315
317 TEST_F(QuicMultipathSentPacketManagerTest, GetLeastPacketAwaitedByPeer) { 316 TEST_F(QuicMultipathSentPacketManagerTest, GetLeastPacketAwaitedByPeer) {
318 EXPECT_CALL(*manager_0_, GetLeastPacketAwaitedByPeer(kDefaultPathId)) 317 EXPECT_CALL(*manager_0_, GetLeastPacketAwaitedByPeer(kDefaultPathId))
319 .WillOnce(Return(10)); 318 .WillOnce(Return(10));
320 EXPECT_CALL(*manager_1_, GetLeastPacketAwaitedByPeer(kTestPathId1)) 319 EXPECT_CALL(*manager_1_, GetLeastPacketAwaitedByPeer(kTestPathId1))
321 .WillOnce(Return(11)); 320 .WillOnce(Return(11));
322 EXPECT_CALL(*manager_2_, GetLeastPacketAwaitedByPeer(kTestPathId2)) 321 EXPECT_CALL(*manager_2_, GetLeastPacketAwaitedByPeer(kTestPathId2))
323 .WillOnce(Return(12)); 322 .WillOnce(Return(12));
324 EXPECT_EQ(10u, 323 EXPECT_EQ(10u,
325 multipath_manager_.GetLeastPacketAwaitedByPeer(kDefaultPathId)); 324 multipath_manager_.GetLeastPacketAwaitedByPeer(kDefaultPathId));
326 EXPECT_EQ(11u, multipath_manager_.GetLeastPacketAwaitedByPeer(kTestPathId1)); 325 EXPECT_EQ(11u, multipath_manager_.GetLeastPacketAwaitedByPeer(kTestPathId1));
327 EXPECT_EQ(12u, multipath_manager_.GetLeastPacketAwaitedByPeer(kTestPathId2)); 326 EXPECT_EQ(12u, multipath_manager_.GetLeastPacketAwaitedByPeer(kTestPathId2));
328 EXPECT_DFATAL(multipath_manager_.GetLeastPacketAwaitedByPeer(kTestPathId3), 327 EXPECT_QUIC_BUG(multipath_manager_.GetLeastPacketAwaitedByPeer(kTestPathId3),
329 ""); 328 "");
330 } 329 }
331 330
332 TEST_F(QuicMultipathSentPacketManagerTest, SetNetworkChangeVisitor) { 331 TEST_F(QuicMultipathSentPacketManagerTest, SetNetworkChangeVisitor) {
333 EXPECT_CALL(*manager_0_, SetNetworkChangeVisitor(nullptr)); 332 EXPECT_CALL(*manager_0_, SetNetworkChangeVisitor(nullptr));
334 EXPECT_CALL(*manager_1_, SetNetworkChangeVisitor(nullptr)); 333 EXPECT_CALL(*manager_1_, SetNetworkChangeVisitor(nullptr));
335 multipath_manager_.SetNetworkChangeVisitor(nullptr); 334 multipath_manager_.SetNetworkChangeVisitor(nullptr);
336 } 335 }
337 336
338 TEST_F(QuicMultipathSentPacketManagerTest, InSlowStart) { 337 TEST_F(QuicMultipathSentPacketManagerTest, InSlowStart) {
339 EXPECT_CALL(*manager_0_, InSlowStart()).WillOnce(Return(true)); 338 EXPECT_CALL(*manager_0_, InSlowStart()).WillOnce(Return(true));
(...skipping 13 matching lines...) Expand all
353 TEST_F(QuicMultipathSentPacketManagerTest, OnApplicationLimited) { 352 TEST_F(QuicMultipathSentPacketManagerTest, OnApplicationLimited) {
354 EXPECT_CALL(*manager_0_, OnApplicationLimited()).Times(1); 353 EXPECT_CALL(*manager_0_, OnApplicationLimited()).Times(1);
355 EXPECT_CALL(*manager_1_, OnApplicationLimited()).Times(1); 354 EXPECT_CALL(*manager_1_, OnApplicationLimited()).Times(1);
356 EXPECT_CALL(*manager_2_, OnApplicationLimited()).Times(0); 355 EXPECT_CALL(*manager_2_, OnApplicationLimited()).Times(0);
357 multipath_manager_.OnApplicationLimited(); 356 multipath_manager_.OnApplicationLimited();
358 } 357 }
359 358
360 } // namespace 359 } // namespace
361 } // namespace test 360 } // namespace test
362 } // namespace net 361 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/core/quic_multipath_received_packet_manager_test.cc ('k') | net/quic/core/quic_one_block_arena_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698