| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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/socket/client_socket_pool_base.h" | 5 #include "net/socket/client_socket_pool_base.h" |
| 6 | 6 |
| 7 #include "base/callback.h" | 7 #include "base/callback.h" |
| 8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
| 9 #include "base/message_loop.h" | 9 #include "base/message_loop.h" |
| 10 #include "base/platform_thread.h" | 10 #include "base/platform_thread.h" |
| (...skipping 731 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 742 EXPECT_EQ(3, GetOrderOfRequest(3)); | 742 EXPECT_EQ(3, GetOrderOfRequest(3)); |
| 743 EXPECT_EQ(4, GetOrderOfRequest(4)); | 743 EXPECT_EQ(4, GetOrderOfRequest(4)); |
| 744 | 744 |
| 745 // Request ("b", HIGHEST) has the highest priority, then ("a", MEDIUM), | 745 // Request ("b", HIGHEST) has the highest priority, then ("a", MEDIUM), |
| 746 // and then ("c", LOWEST). | 746 // and then ("c", LOWEST). |
| 747 EXPECT_EQ(7, GetOrderOfRequest(5)); | 747 EXPECT_EQ(7, GetOrderOfRequest(5)); |
| 748 EXPECT_EQ(6, GetOrderOfRequest(6)); | 748 EXPECT_EQ(6, GetOrderOfRequest(6)); |
| 749 EXPECT_EQ(5, GetOrderOfRequest(7)); | 749 EXPECT_EQ(5, GetOrderOfRequest(7)); |
| 750 | 750 |
| 751 // Make sure we test order of all requests made. | 751 // Make sure we test order of all requests made. |
| 752 EXPECT_EQ(kIndexOutOfBounds, GetOrderOfRequest(8)); | 752 EXPECT_EQ(kIndexOutOfBounds, GetOrderOfRequest(9)); |
| 753 } | 753 } |
| 754 | 754 |
| 755 TEST_F(ClientSocketPoolBaseTest, TotalLimitRespectsGroupLimit) { | 755 TEST_F(ClientSocketPoolBaseTest, TotalLimitRespectsGroupLimit) { |
| 756 CreatePool(kDefaultMaxSockets, kDefaultMaxSocketsPerGroup); | 756 CreatePool(kDefaultMaxSockets, kDefaultMaxSocketsPerGroup); |
| 757 | 757 |
| 758 EXPECT_EQ(OK, StartRequest("a", LOWEST)); | 758 EXPECT_EQ(OK, StartRequest("a", LOWEST)); |
| 759 EXPECT_EQ(OK, StartRequest("a", LOW)); | 759 EXPECT_EQ(OK, StartRequest("a", LOW)); |
| 760 EXPECT_EQ(OK, StartRequest("b", HIGHEST)); | 760 EXPECT_EQ(OK, StartRequest("b", HIGHEST)); |
| 761 EXPECT_EQ(OK, StartRequest("b", MEDIUM)); | 761 EXPECT_EQ(OK, StartRequest("b", MEDIUM)); |
| 762 | 762 |
| (...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1019 | 1019 |
| 1020 EXPECT_EQ(kDefaultMaxSockets, client_socket_factory_.allocation_count()); | 1020 EXPECT_EQ(kDefaultMaxSockets, client_socket_factory_.allocation_count()); |
| 1021 EXPECT_EQ(kDefaultMaxSockets - 1, pool_->IdleSocketCount()); | 1021 EXPECT_EQ(kDefaultMaxSockets - 1, pool_->IdleSocketCount()); |
| 1022 } | 1022 } |
| 1023 | 1023 |
| 1024 TEST_F(ClientSocketPoolBaseTest, PendingRequests) { | 1024 TEST_F(ClientSocketPoolBaseTest, PendingRequests) { |
| 1025 CreatePool(kDefaultMaxSockets, kDefaultMaxSocketsPerGroup); | 1025 CreatePool(kDefaultMaxSockets, kDefaultMaxSocketsPerGroup); |
| 1026 | 1026 |
| 1027 EXPECT_EQ(OK, StartRequest("a", kDefaultPriority)); | 1027 EXPECT_EQ(OK, StartRequest("a", kDefaultPriority)); |
| 1028 EXPECT_EQ(OK, StartRequest("a", kDefaultPriority)); | 1028 EXPECT_EQ(OK, StartRequest("a", kDefaultPriority)); |
| 1029 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", IDLE)); |
| 1029 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", LOWEST)); | 1030 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", LOWEST)); |
| 1030 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", MEDIUM)); | 1031 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", MEDIUM)); |
| 1031 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", HIGHEST)); | 1032 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", HIGHEST)); |
| 1032 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", LOW)); | 1033 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", LOW)); |
| 1033 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", LOWEST)); | 1034 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", LOWEST)); |
| 1034 | 1035 |
| 1035 ReleaseAllConnections(KEEP_ALIVE); | 1036 ReleaseAllConnections(KEEP_ALIVE); |
| 1036 | 1037 |
| 1037 EXPECT_EQ(kDefaultMaxSocketsPerGroup, | 1038 EXPECT_EQ(kDefaultMaxSocketsPerGroup, |
| 1038 client_socket_factory_.allocation_count()); | 1039 client_socket_factory_.allocation_count()); |
| 1039 EXPECT_EQ(requests_.size() - kDefaultMaxSocketsPerGroup, completion_count_); | 1040 EXPECT_EQ(requests_.size() - kDefaultMaxSocketsPerGroup, completion_count_); |
| 1040 | 1041 |
| 1041 EXPECT_EQ(1, GetOrderOfRequest(1)); | 1042 EXPECT_EQ(1, GetOrderOfRequest(1)); |
| 1042 EXPECT_EQ(2, GetOrderOfRequest(2)); | 1043 EXPECT_EQ(2, GetOrderOfRequest(2)); |
| 1043 EXPECT_EQ(6, GetOrderOfRequest(3)); | 1044 EXPECT_EQ(8, GetOrderOfRequest(3)); |
| 1044 EXPECT_EQ(4, GetOrderOfRequest(4)); | 1045 EXPECT_EQ(6, GetOrderOfRequest(4)); |
| 1045 EXPECT_EQ(3, GetOrderOfRequest(5)); | 1046 EXPECT_EQ(4, GetOrderOfRequest(5)); |
| 1046 EXPECT_EQ(5, GetOrderOfRequest(6)); | 1047 EXPECT_EQ(3, GetOrderOfRequest(6)); |
| 1047 EXPECT_EQ(7, GetOrderOfRequest(7)); | 1048 EXPECT_EQ(5, GetOrderOfRequest(7)); |
| 1049 EXPECT_EQ(7, GetOrderOfRequest(8)); |
| 1048 | 1050 |
| 1049 // Make sure we test order of all requests made. | 1051 // Make sure we test order of all requests made. |
| 1050 EXPECT_EQ(kIndexOutOfBounds, GetOrderOfRequest(8)); | 1052 EXPECT_EQ(kIndexOutOfBounds, GetOrderOfRequest(9)); |
| 1051 } | 1053 } |
| 1052 | 1054 |
| 1053 TEST_F(ClientSocketPoolBaseTest, PendingRequests_NoKeepAlive) { | 1055 TEST_F(ClientSocketPoolBaseTest, PendingRequests_NoKeepAlive) { |
| 1054 CreatePool(kDefaultMaxSockets, kDefaultMaxSocketsPerGroup); | 1056 CreatePool(kDefaultMaxSockets, kDefaultMaxSocketsPerGroup); |
| 1055 | 1057 |
| 1056 EXPECT_EQ(OK, StartRequest("a", kDefaultPriority)); | 1058 EXPECT_EQ(OK, StartRequest("a", kDefaultPriority)); |
| 1057 EXPECT_EQ(OK, StartRequest("a", kDefaultPriority)); | 1059 EXPECT_EQ(OK, StartRequest("a", kDefaultPriority)); |
| 1058 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", LOWEST)); | 1060 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", LOWEST)); |
| 1059 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", MEDIUM)); | 1061 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", MEDIUM)); |
| 1060 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", HIGHEST)); | 1062 EXPECT_EQ(ERR_IO_PENDING, StartRequest("a", HIGHEST)); |
| (...skipping 1032 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2093 // Finally, signal the waiting Connect. | 2095 // Finally, signal the waiting Connect. |
| 2094 client_socket_factory_.SignalJobs(); | 2096 client_socket_factory_.SignalJobs(); |
| 2095 EXPECT_EQ(0, pool_->NumConnectJobsInGroup("a")); | 2097 EXPECT_EQ(0, pool_->NumConnectJobsInGroup("a")); |
| 2096 | 2098 |
| 2097 MessageLoop::current()->RunAllPending(); | 2099 MessageLoop::current()->RunAllPending(); |
| 2098 } | 2100 } |
| 2099 | 2101 |
| 2100 } // namespace | 2102 } // namespace |
| 2101 | 2103 |
| 2102 } // namespace net | 2104 } // namespace net |
| OLD | NEW |