| Index: net/quic/congestion_control/leaky_bucket_test.cc
|
| diff --git a/net/quic/congestion_control/leaky_bucket_test.cc b/net/quic/congestion_control/leaky_bucket_test.cc
|
| index 89ab5dbe67a6ded8f199603994b672af795c6606..b5423702f23e87da155d57e390a4e2563f1cb60f 100644
|
| --- a/net/quic/congestion_control/leaky_bucket_test.cc
|
| +++ b/net/quic/congestion_control/leaky_bucket_test.cc
|
| @@ -13,8 +13,8 @@ namespace test {
|
|
|
| class LeakyBucketTest : public ::testing::Test {
|
| protected:
|
| - virtual void SetUp() {
|
| - leaky_bucket_.reset(new LeakyBucket(&clock_, QuicBandwidth::Zero()));
|
| + void SetUp() {
|
| + leaky_bucket_.reset(new LeakyBucket(QuicBandwidth::Zero()));
|
| }
|
| MockClock clock_;
|
| scoped_ptr<LeakyBucket> leaky_bucket_;
|
| @@ -22,53 +22,53 @@ class LeakyBucketTest : public ::testing::Test {
|
|
|
| TEST_F(LeakyBucketTest, Basic) {
|
| QuicBandwidth draining_rate = QuicBandwidth::FromBytesPerSecond(200000);
|
| - leaky_bucket_->SetDrainingRate(draining_rate);
|
| - leaky_bucket_->Add(2000);
|
| - EXPECT_EQ(2000u, leaky_bucket_->BytesPending());
|
| + leaky_bucket_->SetDrainingRate(clock_.Now(), draining_rate);
|
| + leaky_bucket_->Add(clock_.Now(), 2000);
|
| + EXPECT_EQ(2000u, leaky_bucket_->BytesPending(clock_.Now()));
|
| EXPECT_EQ(QuicTime::Delta::FromMilliseconds(10),
|
| - leaky_bucket_->TimeRemaining());
|
| + leaky_bucket_->TimeRemaining(clock_.Now()));
|
| clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(5));
|
| - EXPECT_EQ(1000u, leaky_bucket_->BytesPending());
|
| + EXPECT_EQ(1000u, leaky_bucket_->BytesPending(clock_.Now()));
|
| EXPECT_EQ(QuicTime::Delta::FromMilliseconds(5),
|
| - leaky_bucket_->TimeRemaining());
|
| + leaky_bucket_->TimeRemaining(clock_.Now()));
|
| clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(5));
|
| - EXPECT_EQ(0u, leaky_bucket_->BytesPending());
|
| - EXPECT_TRUE(leaky_bucket_->TimeRemaining().IsZero());
|
| + EXPECT_EQ(0u, leaky_bucket_->BytesPending(clock_.Now()));
|
| + EXPECT_TRUE(leaky_bucket_->TimeRemaining(clock_.Now()).IsZero());
|
| clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(5));
|
| - EXPECT_EQ(0u, leaky_bucket_->BytesPending());
|
| - EXPECT_TRUE(leaky_bucket_->TimeRemaining().IsZero());
|
| - leaky_bucket_->Add(2000);
|
| + EXPECT_EQ(0u, leaky_bucket_->BytesPending(clock_.Now()));
|
| + EXPECT_TRUE(leaky_bucket_->TimeRemaining(clock_.Now()).IsZero());
|
| + leaky_bucket_->Add(clock_.Now(), 2000);
|
| clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(11));
|
| - EXPECT_EQ(0u, leaky_bucket_->BytesPending());
|
| - EXPECT_TRUE(leaky_bucket_->TimeRemaining().IsZero());
|
| - leaky_bucket_->Add(2000);
|
| + EXPECT_EQ(0u, leaky_bucket_->BytesPending(clock_.Now()));
|
| + EXPECT_TRUE(leaky_bucket_->TimeRemaining(clock_.Now()).IsZero());
|
| + leaky_bucket_->Add(clock_.Now(), 2000);
|
| clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(5));
|
| - leaky_bucket_->Add(2000);
|
| + leaky_bucket_->Add(clock_.Now(), 2000);
|
| clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(5));
|
| - EXPECT_EQ(2000u, leaky_bucket_->BytesPending());
|
| + EXPECT_EQ(2000u, leaky_bucket_->BytesPending(clock_.Now()));
|
| EXPECT_EQ(QuicTime::Delta::FromMilliseconds(10),
|
| - leaky_bucket_->TimeRemaining());
|
| + leaky_bucket_->TimeRemaining(clock_.Now()));
|
| clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(10));
|
| - EXPECT_EQ(0u, leaky_bucket_->BytesPending());
|
| - EXPECT_TRUE(leaky_bucket_->TimeRemaining().IsZero());
|
| + EXPECT_EQ(0u, leaky_bucket_->BytesPending(clock_.Now()));
|
| + EXPECT_TRUE(leaky_bucket_->TimeRemaining(clock_.Now()).IsZero());
|
| }
|
|
|
| TEST_F(LeakyBucketTest, ChangeDrainRate) {
|
| QuicBandwidth draining_rate = QuicBandwidth::FromBytesPerSecond(200000);
|
| - leaky_bucket_->SetDrainingRate(draining_rate);
|
| - leaky_bucket_->Add(2000);
|
| - EXPECT_EQ(2000u, leaky_bucket_->BytesPending());
|
| + leaky_bucket_->SetDrainingRate(clock_.Now(), draining_rate);
|
| + leaky_bucket_->Add(clock_.Now(), 2000);
|
| + EXPECT_EQ(2000u, leaky_bucket_->BytesPending(clock_.Now()));
|
| EXPECT_EQ(QuicTime::Delta::FromMilliseconds(10),
|
| - leaky_bucket_->TimeRemaining());
|
| + leaky_bucket_->TimeRemaining(clock_.Now()));
|
| clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(5));
|
| - EXPECT_EQ(1000u, leaky_bucket_->BytesPending());
|
| + EXPECT_EQ(1000u, leaky_bucket_->BytesPending(clock_.Now()));
|
| EXPECT_EQ(QuicTime::Delta::FromMilliseconds(5),
|
| - leaky_bucket_->TimeRemaining());
|
| + leaky_bucket_->TimeRemaining(clock_.Now()));
|
| draining_rate = draining_rate.Scale(0.5f); // Cut drain rate in half.
|
| - leaky_bucket_->SetDrainingRate(draining_rate);
|
| - EXPECT_EQ(1000u, leaky_bucket_->BytesPending());
|
| + leaky_bucket_->SetDrainingRate(clock_.Now(), draining_rate);
|
| + EXPECT_EQ(1000u, leaky_bucket_->BytesPending(clock_.Now()));
|
| EXPECT_EQ(QuicTime::Delta::FromMilliseconds(10),
|
| - leaky_bucket_->TimeRemaining());
|
| + leaky_bucket_->TimeRemaining(clock_.Now()));
|
| }
|
|
|
| } // namespace test
|
|
|