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

Side by Side Diff: net/quic/congestion_control/paced_sender_test.cc

Issue 266243004: Clang format slam. Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 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 | Annotate | Revision Log
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 "base/logging.h" 5 #include "base/logging.h"
6 #include "base/memory/scoped_ptr.h" 6 #include "base/memory/scoped_ptr.h"
7 #include "net/quic/congestion_control/paced_sender.h" 7 #include "net/quic/congestion_control/paced_sender.h"
8 #include "net/quic/quic_protocol.h" 8 #include "net/quic/quic_protocol.h"
9 #include "net/quic/test_tools/mock_clock.h" 9 #include "net/quic/test_tools/mock_clock.h"
10 #include "testing/gmock/include/gmock/gmock.h" 10 #include "testing/gmock/include/gmock/gmock.h"
11 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
12 12
13 namespace net { 13 namespace net {
14 namespace test { 14 namespace test {
15 15
16 const int kHundredKBytesPerS = 100; 16 const int kHundredKBytesPerS = 100;
17 17
18 class PacedSenderTest : public ::testing::Test { 18 class PacedSenderTest : public ::testing::Test {
19 protected: 19 protected:
20 PacedSenderTest() 20 PacedSenderTest()
21 : zero_time_(QuicTime::Delta::Zero()), 21 : zero_time_(QuicTime::Delta::Zero()),
22 paced_sender_(new PacedSender( 22 paced_sender_(new PacedSender(
23 QuicBandwidth::FromKBytesPerSecond(kHundredKBytesPerS), 23 QuicBandwidth::FromKBytesPerSecond(kHundredKBytesPerS),
24 kDefaultMaxPacketSize)) { 24 kDefaultMaxPacketSize)) {}
25 }
26 25
27 const QuicTime::Delta zero_time_; 26 const QuicTime::Delta zero_time_;
28 MockClock clock_; 27 MockClock clock_;
29 scoped_ptr<PacedSender> paced_sender_; 28 scoped_ptr<PacedSender> paced_sender_;
30 }; 29 };
31 30
32 TEST_F(PacedSenderTest, Basic) { 31 TEST_F(PacedSenderTest, Basic) {
33 paced_sender_->UpdateBandwidthEstimate(clock_.Now(), 32 paced_sender_->UpdateBandwidthEstimate(
33 clock_.Now(),
34 QuicBandwidth::FromKBytesPerSecond(kHundredKBytesPerS * 10)); 34 QuicBandwidth::FromKBytesPerSecond(kHundredKBytesPerS * 10));
35 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero()); 35 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero());
36 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize); 36 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize);
37 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero()); 37 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero());
38 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize); 38 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize);
39 EXPECT_EQ(static_cast<int64>(kDefaultMaxPacketSize * 2), 39 EXPECT_EQ(
40 paced_sender_->TimeUntilSend( 40 static_cast<int64>(kDefaultMaxPacketSize * 2),
41 clock_.Now(), zero_time_).ToMicroseconds()); 41 paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).ToMicroseconds());
42 clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(24)); 42 clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(24));
43 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero()); 43 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero());
44 } 44 }
45 45
46 TEST_F(PacedSenderTest, LowRate) { 46 TEST_F(PacedSenderTest, LowRate) {
47 paced_sender_->UpdateBandwidthEstimate(clock_.Now(), 47 paced_sender_->UpdateBandwidthEstimate(
48 QuicBandwidth::FromKBytesPerSecond(kHundredKBytesPerS)); 48 clock_.Now(), QuicBandwidth::FromKBytesPerSecond(kHundredKBytesPerS));
49 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero()); 49 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero());
50 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize); 50 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize);
51 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero()); 51 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero());
52 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize); 52 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize);
53 EXPECT_EQ(static_cast<int64>(kDefaultMaxPacketSize * 20), 53 EXPECT_EQ(
54 paced_sender_->TimeUntilSend( 54 static_cast<int64>(kDefaultMaxPacketSize * 20),
55 clock_.Now(), zero_time_).ToMicroseconds()); 55 paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).ToMicroseconds());
56 clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(24)); 56 clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(24));
57 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero()); 57 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero());
58 } 58 }
59 59
60 TEST_F(PacedSenderTest, HighRate) { 60 TEST_F(PacedSenderTest, HighRate) {
61 QuicBandwidth bandwidth_estimate = QuicBandwidth::FromKBytesPerSecond( 61 QuicBandwidth bandwidth_estimate =
62 kHundredKBytesPerS * 100); 62 QuicBandwidth::FromKBytesPerSecond(kHundredKBytesPerS * 100);
63 paced_sender_->UpdateBandwidthEstimate(clock_.Now(), bandwidth_estimate); 63 paced_sender_->UpdateBandwidthEstimate(clock_.Now(), bandwidth_estimate);
64 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero()); 64 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero());
65 for (int i = 0; i < 16; ++i) { 65 for (int i = 0; i < 16; ++i) {
66 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize); 66 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize);
67 EXPECT_TRUE(paced_sender_->TimeUntilSend( 67 EXPECT_TRUE(
68 clock_.Now(), zero_time_).IsZero()); 68 paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero());
69 } 69 }
70 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize); 70 paced_sender_->OnPacketSent(clock_.Now(), kDefaultMaxPacketSize);
71 EXPECT_EQ(2040, paced_sender_->TimeUntilSend( 71 EXPECT_EQ(
72 clock_.Now(), zero_time_).ToMicroseconds()); 72 2040,
73 paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).ToMicroseconds());
73 clock_.AdvanceTime(QuicTime::Delta::FromMicroseconds(20400)); 74 clock_.AdvanceTime(QuicTime::Delta::FromMicroseconds(20400));
74 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero()); 75 EXPECT_TRUE(paced_sender_->TimeUntilSend(clock_.Now(), zero_time_).IsZero());
75 } 76 }
76 77
77 } // namespace test 78 } // namespace test
78 } // namespace net 79 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698