| Index: net/socket/client_socket_pool_base_unittest.cc
|
| diff --git a/net/socket/client_socket_pool_base_unittest.cc b/net/socket/client_socket_pool_base_unittest.cc
|
| index 7b9bffa3a52a3fdaab3a6f1632f9f3df333e4e11..595b1380242351e1b9fad6cda151418a5301cbb6 100644
|
| --- a/net/socket/client_socket_pool_base_unittest.cc
|
| +++ b/net/socket/client_socket_pool_base_unittest.cc
|
| @@ -549,6 +549,10 @@ class TestClientSocketPool : public ClientSocketPool {
|
|
|
| void CloseIdleSockets() override { base_.CloseIdleSockets(); }
|
|
|
| + void CloseIdleSocketsInGroup(const std::string& group_name) override {
|
| + base_.CloseIdleSocketsInGroup(group_name);
|
| + }
|
| +
|
| int IdleSocketCount() const override { return base_.idle_socket_count(); }
|
|
|
| int IdleSocketCountInGroup(const std::string& group_name) const override {
|
| @@ -1620,6 +1624,36 @@ TEST_F(ClientSocketPoolBaseTest, CloseIdleSocketsForced) {
|
| base::Bucket(/*IDLE_SOCKET_FATE_CLEAN_UP_FORCED=*/4, 1)));
|
| }
|
|
|
| +TEST_F(ClientSocketPoolBaseTest, CloseIdleSocketsInGroupForced) {
|
| + base::HistogramTester histograms;
|
| + CreatePool(kDefaultMaxSockets, kDefaultMaxSocketsPerGroup);
|
| + TestCompletionCallback callback;
|
| + BoundTestNetLog log;
|
| + ClientSocketHandle handle1;
|
| + int rv = handle1.Init("a", params_, LOWEST,
|
| + ClientSocketPool::RespectLimits::ENABLED,
|
| + callback.callback(), pool_.get(), log.bound());
|
| + EXPECT_THAT(rv, IsOk());
|
| + ClientSocketHandle handle2;
|
| + rv = handle2.Init("a", params_, LOWEST,
|
| + ClientSocketPool::RespectLimits::ENABLED,
|
| + callback.callback(), pool_.get(), log.bound());
|
| + ClientSocketHandle handle3;
|
| + rv = handle3.Init("b", params_, LOWEST,
|
| + ClientSocketPool::RespectLimits::ENABLED,
|
| + callback.callback(), pool_.get(), log.bound());
|
| + EXPECT_THAT(rv, IsOk());
|
| + handle1.Reset();
|
| + handle2.Reset();
|
| + handle3.Reset();
|
| + EXPECT_EQ(3, pool_->IdleSocketCount());
|
| + pool_->CloseIdleSocketsInGroup("a");
|
| + EXPECT_EQ(1, pool_->IdleSocketCount());
|
| + EXPECT_THAT(histograms.GetAllSamples(kIdleSocketFateHistogram),
|
| + testing::ElementsAre(
|
| + base::Bucket(/*IDLE_SOCKET_FATE_CLEAN_UP_FORCED=*/4, 2)));
|
| +}
|
| +
|
| TEST_F(ClientSocketPoolBaseTest, CleanUpUnusableIdleSockets) {
|
| base::HistogramTester histograms;
|
| CreatePool(kDefaultMaxSockets, kDefaultMaxSocketsPerGroup);
|
|
|