[Net] Assert that URLRequests with LOAD_IGNORE_LIMITS have MAXIMUM_PRIORITY
Also remove the priority juggling in ClientSocketPoolBaseHelper, and instead
assert that any requests with ignore_limits = true also has priority =
MAXIMUM_PRIORITY.
BUG=166689
[email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
[email protected], [email protected]
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=232802
Review URL: https://codereview.chromium.org/51683002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@234964 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/net/url_request/url_request_unittest.cc b/net/url_request/url_request_unittest.cc
index 8ba6187..dd7dc77 100644
--- a/net/url_request/url_request_unittest.cc
+++ b/net/url_request/url_request_unittest.cc
@@ -1931,6 +1931,31 @@
EXPECT_EQ(MEDIUM, job->priority());
}
+// Setting the IGNORE_LIMITS load flag should be okay if the priority
+// is MAXIMUM_PRIORITY.
+TEST_F(URLRequestTest, PriorityIgnoreLimits) {
+ TestDelegate d;
+ URLRequest req(GURL("http://test_intercept/foo"),
+ MAXIMUM_PRIORITY,
+ &d,
+ &default_context_);
+ EXPECT_EQ(MAXIMUM_PRIORITY, req.priority());
+
+ scoped_refptr<URLRequestTestJob> job =
+ new URLRequestTestJob(&req, &default_network_delegate_);
+ AddTestInterceptor()->set_main_intercept_job(job.get());
+
+ req.SetLoadFlags(LOAD_IGNORE_LIMITS);
+ EXPECT_EQ(MAXIMUM_PRIORITY, req.priority());
+
+ req.SetPriority(MAXIMUM_PRIORITY);
+ EXPECT_EQ(MAXIMUM_PRIORITY, req.priority());
+
+ req.Start();
+ EXPECT_EQ(MAXIMUM_PRIORITY, req.priority());
+ EXPECT_EQ(MAXIMUM_PRIORITY, job->priority());
+}
+
// TODO(droger): Support SpawnedTestServer on iOS (see http://crbug.com/148666).
#if !defined(OS_IOS)
// A subclass of SpawnedTestServer that uses a statically-configured hostname.
@@ -2039,7 +2064,7 @@
DEFAULT_PRIORITY,
&d,
&default_context_);
- req.set_load_flags(LOAD_DO_NOT_SEND_COOKIES);
+ req.SetLoadFlags(LOAD_DO_NOT_SEND_COOKIES);
req.Start();
base::RunLoop().Run();
@@ -2083,7 +2108,7 @@
DEFAULT_PRIORITY,
&d,
&default_context_);
- req.set_load_flags(LOAD_DO_NOT_SAVE_COOKIES);
+ req.SetLoadFlags(LOAD_DO_NOT_SAVE_COOKIES);
req.Start();
base::RunLoop().Run();
@@ -2525,7 +2550,7 @@
HttpRequestHeaders headers;
headers.SetHeader(HttpRequestHeaders::kReferer, "http://bar.com/");
req.SetExtraRequestHeaders(headers);
- req.set_load_flags(LOAD_VALIDATE_CACHE);
+ req.SetLoadFlags(LOAD_VALIDATE_CACHE);
req.Start();
base::RunLoop().Run();
@@ -5371,7 +5396,7 @@
DEFAULT_PRIORITY,
&d,
&default_context_);
- r.set_load_flags(LOAD_VALIDATE_CACHE);
+ r.SetLoadFlags(LOAD_VALIDATE_CACHE);
r.Start();
base::RunLoop().Run();
@@ -5491,7 +5516,7 @@
DEFAULT_PRIORITY,
&d,
&default_context_);
- r.set_load_flags(LOAD_VALIDATE_CACHE);
+ r.SetLoadFlags(LOAD_VALIDATE_CACHE);
r.Start();
base::RunLoop().Run();