Chromium Code Reviews| Index: content/browser/loader/resource_scheduler_unittest.cc |
| diff --git a/content/browser/loader/resource_scheduler_unittest.cc b/content/browser/loader/resource_scheduler_unittest.cc |
| index a1ea675164f219bb8a815d856c536e988ff01c2e..5942b0c0de53c827823d402de7cc0d9275c8585e 100644 |
| --- a/content/browser/loader/resource_scheduler_unittest.cc |
| +++ b/content/browser/loader/resource_scheduler_unittest.cc |
| @@ -318,19 +318,41 @@ TEST_F(ResourceSchedulerTest, LimitedNumberOfDelayableRequestsInFlight) { |
| EXPECT_TRUE(high->started()); |
| const int kMaxNumDelayableRequestsPerClient = 10; // Should match the .cc. |
| - ScopedVector<TestRequest> lows; |
| - for (int i = 0; i < kMaxNumDelayableRequestsPerClient; ++i) { |
| + const int kMaxNumDelayableRequestsPerHost = 6; |
| + ScopedVector<TestRequest> lows_singlehost; |
| + // Queue up to the per-host limit (we subtract the current high-pri request). |
| + for (int i = 0; i < kMaxNumDelayableRequestsPerHost - 1; ++i) { |
| string url = "http://host/low" + base::IntToString(i); |
| - lows.push_back(NewRequest(url.c_str(), net::LOWEST)); |
| - EXPECT_TRUE(lows[i]->started()); |
| + lows_singlehost.push_back(NewRequest(url.c_str(), net::LOWEST)); |
| + EXPECT_TRUE(lows_singlehost[i]->started()); |
| } |
| - scoped_ptr<TestRequest> last(NewRequest("http://host/last", net::LOWEST)); |
| - EXPECT_FALSE(last->started()); |
| + scoped_ptr<TestRequest> second_last_singlehost(NewRequest("http://host/last", |
| + net::LOWEST)); |
|
James Simonsen
2013/11/13 01:26:23
nit: fix indenting
oystein (OOO til 10th of July)
2013/11/14 00:19:07
Done.
|
| + scoped_ptr<TestRequest> last_singlehost(NewRequest("http://host/s_last", |
| + net::LOWEST)); |
| + |
| + EXPECT_FALSE(second_last_singlehost->started()); |
| high.reset(); |
| - EXPECT_FALSE(last->started()); |
| - lows.erase(lows.begin()); |
| - EXPECT_TRUE(last->started()); |
| + EXPECT_TRUE(second_last_singlehost->started()); |
| + EXPECT_FALSE(last_singlehost->started()); |
| + lows_singlehost.erase(lows_singlehost.begin()); |
| + EXPECT_TRUE(last_singlehost->started()); |
| + |
| + // Queue more requests from different hosts until we reach the total limit. |
| + int expected_slots_left = |
| + kMaxNumDelayableRequestsPerClient - kMaxNumDelayableRequestsPerHost; |
| + EXPECT_GT(expected_slots_left, 0); |
| + ScopedVector<TestRequest> lows_differenthosts; |
| + for (int i = 0; i < expected_slots_left; ++i) { |
| + string url = "http://host" + base::IntToString(i) + "/low"; |
| + lows_differenthosts.push_back(NewRequest(url.c_str(), net::LOWEST)); |
| + EXPECT_TRUE(lows_differenthosts[i]->started()); |
| + } |
| + |
| + scoped_ptr<TestRequest> last_differenthost(NewRequest("http://host_new/last", |
| + net::LOWEST)); |
|
James Simonsen
2013/11/13 01:26:23
indent
oystein (OOO til 10th of July)
2013/11/14 00:19:07
Done.
|
| + EXPECT_FALSE(last_differenthost->started()); |
| } |
| TEST_F(ResourceSchedulerTest, RaisePriorityAndStart) { |
| @@ -391,7 +413,7 @@ TEST_F(ResourceSchedulerTest, LowerPriority) { |
| const int kNumFillerRequests = kMaxNumDelayableRequestsPerClient - 2; |
| ScopedVector<TestRequest> lows; |
| for (int i = 0; i < kNumFillerRequests; ++i) { |
| - string url = "http://host/low" + base::IntToString(i); |
| + string url = "http://host" + base::IntToString(i) + "/low"; |
| lows.push_back(NewRequest(url.c_str(), net::LOWEST)); |
| } |