Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3635)

Unified Diff: chrome/browser/prerender/prerender_browsertest.cc

Issue 300693005: Make URLRequestFilter use URLRequestInterceptors. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix merge Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/policy/policy_browsertest.cc ('k') | content/test/net/url_request_mock_http_job.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/prerender/prerender_browsertest.cc
diff --git a/chrome/browser/prerender/prerender_browsertest.cc b/chrome/browser/prerender/prerender_browsertest.cc
index 1d6a7923ca49023d409460e9d7c649969a33cb76..fbf7c9bbf799a5f390074b12443b0defa0d7b85c 100644
--- a/chrome/browser/prerender/prerender_browsertest.cc
+++ b/chrome/browser/prerender/prerender_browsertest.cc
@@ -93,6 +93,7 @@
#include "net/url_request/url_request_context.h"
#include "net/url_request/url_request_context_getter.h"
#include "net/url_request/url_request_filter.h"
+#include "net/url_request/url_request_interceptor.h"
#include "net/url_request/url_request_job.h"
#include "ui/base/l10n/l10n_util.h"
#include "url/gurl.h"
@@ -778,18 +779,17 @@ class HangingURLRequestJob : public net::URLRequestJob {
virtual ~HangingURLRequestJob() {}
};
-class HangingFirstRequestProtocolHandler
- : public net::URLRequestJobFactory::ProtocolHandler {
+class HangingFirstRequestInterceptor : public net::URLRequestInterceptor {
public:
- HangingFirstRequestProtocolHandler(const base::FilePath& file,
- base::Closure callback)
+ HangingFirstRequestInterceptor(const base::FilePath& file,
+ base::Closure callback)
: file_(file),
callback_(callback),
first_run_(true) {
}
- virtual ~HangingFirstRequestProtocolHandler() {}
+ virtual ~HangingFirstRequestInterceptor() {}
- virtual net::URLRequestJob* MaybeCreateJob(
+ virtual net::URLRequestJob* MaybeInterceptRequest(
net::URLRequest* request,
net::NetworkDelegate* network_delegate) const OVERRIDE {
if (first_run_) {
@@ -812,13 +812,12 @@ class HangingFirstRequestProtocolHandler
// Makes |url| never respond on the first load, and then with the contents of
// |file| afterwards. When the first load has been scheduled, runs |callback| on
// the UI thread.
-void CreateHangingFirstRequestProtocolHandlerOnIO(const GURL& url,
- const base::FilePath& file,
- base::Closure callback) {
+void CreateHangingFirstRequestInterceptorOnIO(
+ const GURL& url, const base::FilePath& file, base::Closure callback) {
CHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- scoped_ptr<net::URLRequestJobFactory::ProtocolHandler> never_respond_handler(
- new HangingFirstRequestProtocolHandler(file, callback));
- net::URLRequestFilter::GetInstance()->AddUrlProtocolHandler(
+ scoped_ptr<net::URLRequestInterceptor> never_respond_handler(
+ new HangingFirstRequestInterceptor(file, callback));
+ net::URLRequestFilter::GetInstance()->AddUrlInterceptor(
url, never_respond_handler.Pass());
}
@@ -879,22 +878,21 @@ class RequestCounter : public base::SupportsWeakPtr<RequestCounter> {
};
// Protocol handler which counts the number of requests that start.
-class CountingProtocolHandler
- : public net::URLRequestJobFactory::ProtocolHandler {
+class CountingInterceptor : public net::URLRequestInterceptor {
public:
- CountingProtocolHandler(const base::FilePath& file,
- const base::WeakPtr<RequestCounter>& counter)
+ CountingInterceptor(const base::FilePath& file,
+ const base::WeakPtr<RequestCounter>& counter)
: file_(file),
counter_(counter),
weak_factory_(this) {
}
- virtual ~CountingProtocolHandler() {}
+ virtual ~CountingInterceptor() {}
- virtual net::URLRequestJob* MaybeCreateJob(
+ virtual net::URLRequestJob* MaybeInterceptRequest(
net::URLRequest* request,
net::NetworkDelegate* network_delegate) const OVERRIDE {
MockHTTPJob* job = new MockHTTPJob(request, network_delegate, file_);
- job->set_start_callback(base::Bind(&CountingProtocolHandler::RequestStarted,
+ job->set_start_callback(base::Bind(&CountingInterceptor::RequestStarted,
weak_factory_.GetWeakPtr()));
return job;
}
@@ -908,29 +906,28 @@ class CountingProtocolHandler
private:
base::FilePath file_;
base::WeakPtr<RequestCounter> counter_;
- mutable base::WeakPtrFactory<CountingProtocolHandler> weak_factory_;
+ mutable base::WeakPtrFactory<CountingInterceptor> weak_factory_;
};
// Makes |url| respond to requests with the contents of |file|, counting the
// number that start in |counter|.
-void CreateCountingProtocolHandlerOnIO(
+void CreateCountingInterceptorOnIO(
const GURL& url,
const base::FilePath& file,
const base::WeakPtr<RequestCounter>& counter) {
CHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- scoped_ptr<net::URLRequestJobFactory::ProtocolHandler> protocol_handler(
- new CountingProtocolHandler(file, counter));
- net::URLRequestFilter::GetInstance()->AddUrlProtocolHandler(
- url, protocol_handler.Pass());
+ scoped_ptr<net::URLRequestInterceptor> request_interceptor(
+ new CountingInterceptor(file, counter));
+ net::URLRequestFilter::GetInstance()->AddUrlInterceptor(
+ url, request_interceptor.Pass());
}
// Makes |url| respond to requests with the contents of |file|.
-void CreateMockProtocolHandlerOnIO(const GURL& url,
- const base::FilePath& file) {
+void CreateMockInterceptorOnIO(const GURL& url, const base::FilePath& file) {
CHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- net::URLRequestFilter::GetInstance()->AddUrlProtocolHandler(
- url, content::URLRequestMockHTTPJob::CreateProtocolHandlerForSingleFile(
- file));
+ net::URLRequestFilter::GetInstance()->AddUrlInterceptor(
+ url,
+ content::URLRequestMockHTTPJob::CreateInterceptorForSingleFile(file));
}
// A ContentBrowserClient that cancels all prerenderers on OpenURL.
@@ -1897,8 +1894,8 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderNoCommitNoSwap) {
base::RunLoop prerender_start_loop;
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
- base::Bind(&CreateHangingFirstRequestProtocolHandlerOnIO,
- kNoCommitUrl, file, prerender_start_loop.QuitClosure()));
+ base::Bind(&CreateHangingFirstRequestInterceptorOnIO, kNoCommitUrl, file,
+ prerender_start_loop.QuitClosure()));
DisableJavascriptCalls();
PrerenderTestURL(kNoCommitUrl,
FINAL_STATUS_NAVIGATION_UNCOMMITTED,
@@ -1919,8 +1916,8 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderNoCommitNoSwap2) {
base::RunLoop prerender_start_loop;
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
- base::Bind(&CreateHangingFirstRequestProtocolHandlerOnIO,
- kNoCommitUrl, file, prerender_start_loop.QuitClosure()));
+ base::Bind(&CreateHangingFirstRequestInterceptorOnIO, kNoCommitUrl, file,
+ prerender_start_loop.QuitClosure()));
DisableJavascriptCalls();
PrerenderTestURL(CreateClientRedirect(kNoCommitUrl.spec()),
FINAL_STATUS_APP_TERMINATING, 1);
@@ -3123,7 +3120,7 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderUnload) {
RequestCounter unload_counter;
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
- base::Bind(&CreateCountingProtocolHandlerOnIO,
+ base::Bind(&CreateCountingInterceptorOnIO,
unload_url, empty_file, unload_counter.AsWeakPtr()));
set_loader_path("files/prerender/prerender_loader_with_unload.html");
@@ -3141,7 +3138,7 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHangingUnload) {
base::FilePath(), base::FilePath(FILE_PATH_LITERAL("empty.html")));
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
- base::Bind(&CreateHangingFirstRequestProtocolHandlerOnIO,
+ base::Bind(&CreateHangingFirstRequestInterceptorOnIO,
hang_url, empty_file,
base::Closure()));
@@ -3385,8 +3382,8 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
base::RunLoop hang_loop;
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
- base::Bind(&CreateHangingFirstRequestProtocolHandlerOnIO,
- kNoCommitUrl, file, hang_loop.QuitClosure()));
+ base::Bind(&CreateHangingFirstRequestInterceptorOnIO, kNoCommitUrl,
+ file, hang_loop.QuitClosure()));
// First, fire a prerender that aborts after it completes its load.
std::vector<FinalStatus> expected_final_status_queue;
@@ -3772,8 +3769,7 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
base::FilePath file(GetTestPath("prerender_page.html"));
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
- base::Bind(&CreateMockProtocolHandlerOnIO,
- GURL(webstore_url), file));
+ base::Bind(&CreateMockInterceptorOnIO, GURL(webstore_url), file));
PrerenderTestURL(CreateClientRedirect(webstore_url),
FINAL_STATUS_OPEN_URL, 1);
@@ -3945,14 +3941,14 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderPageNewTab) {
base::FilePath init_file = GetTestPath("init_session_storage.html");
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
- base::Bind(&CreateMockProtocolHandlerOnIO, kInitURL, init_file));
+ base::Bind(&CreateMockInterceptorOnIO, kInitURL, init_file));
const GURL kTestURL("http://prerender.test/prerender_session_storage.html");
base::FilePath test_file = GetTestPath("prerender_session_storage.html");
RequestCounter counter;
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
- base::Bind(&CreateCountingProtocolHandlerOnIO,
+ base::Bind(&CreateCountingInterceptorOnIO,
kTestURL, test_file, counter.AsWeakPtr()));
PrerenderTestURL(kTestURL, FINAL_STATUS_USED, 1);
@@ -3995,14 +3991,14 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderPageNewTabCrossProcess) {
base::FilePath init_file = GetTestPath("init_session_storage.html");
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
- base::Bind(&CreateMockProtocolHandlerOnIO, kInitURL, init_file));
+ base::Bind(&CreateMockInterceptorOnIO, kInitURL, init_file));
const GURL kTestURL("http://prerender.test/prerender_session_storage.html");
base::FilePath test_file = GetTestPath("prerender_session_storage.html");
RequestCounter counter;
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
- base::Bind(&CreateCountingProtocolHandlerOnIO,
+ base::Bind(&CreateCountingInterceptorOnIO,
kTestURL, test_file, counter.AsWeakPtr()));
PrerenderTestURL(kTestURL, FINAL_STATUS_USED, 1);
@@ -4169,7 +4165,7 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderPing) {
RequestCounter ping_counter;
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
- base::Bind(&CreateCountingProtocolHandlerOnIO,
+ base::Bind(&CreateCountingInterceptorOnIO,
kPingURL, empty_file, ping_counter.AsWeakPtr()));
PrerenderTestURL("files/prerender/prerender_page.html", FINAL_STATUS_USED, 1);
« no previous file with comments | « chrome/browser/policy/policy_browsertest.cc ('k') | content/test/net/url_request_mock_http_job.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698