Chromium Code Reviews| Index: chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc |
| diff --git a/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc b/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc |
| index db5e42f7bf2c91e08ce1a59c3a9dc58bbb5c0a78..dd23b8e5bc2498f0d7e44d57cf3def44c409fe40 100644 |
| --- a/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc |
| +++ b/chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc |
| @@ -30,6 +30,7 @@ |
| #include "ui/base/l10n/l10n_util.h" |
| using prerender::test_utils::CreateCountingInterceptorOnIO; |
| +using prerender::test_utils::CreatePrefetchOnlyInterceptorOnIO; |
| using prerender::test_utils::DestructionWaiter; |
| using prerender::test_utils::RequestCounter; |
| using prerender::test_utils::TestPrerender; |
| @@ -269,6 +270,29 @@ IN_PROC_BROWSER_TEST_F(NoStatePrefetchBrowserTest, Prefetch301Redirect) { |
| script_counter.WaitForCount(1); |
| } |
| +// Checks that the load flags are set correctly for all resources in a 301 |
| +// redirect chain. |
| +IN_PROC_BROWSER_TEST_F(NoStatePrefetchBrowserTest, Prefetch301LoadFlags) { |
| + std::string redirect_path = |
| + "/server-redirect/?" + |
| + net::EscapeQueryParamValue(MakeAbsolute(kPrefetchPage), false); |
| + GURL redirect_url = src_server()->GetURL(redirect_path); |
| + GURL page_url = src_server()->GetURL(MakeAbsolute(kPrefetchPage)); |
| + RequestCounter redirect_counter; |
| + content::BrowserThread::PostTask( |
| + content::BrowserThread::IO, FROM_HERE, |
| + base::Bind(&CreatePrefetchOnlyInterceptorOnIO, redirect_url, |
| + redirect_counter.AsWeakPtr())); |
|
pasko
2016/11/23 16:47:29
nit:
since we are waiting on the counter anyway,
mattcary
2016/11/24 08:30:22
I did it this way to be consistent with the other
|
| + RequestCounter page_counter; |
| + content::BrowserThread::PostTask( |
| + content::BrowserThread::IO, FROM_HERE, |
| + base::Bind(&CreatePrefetchOnlyInterceptorOnIO, page_url, |
| + page_counter.AsWeakPtr())); |
| + PrefetchFromFile(redirect_path, FINAL_STATUS_NOSTATE_PREFETCH_FINISHED); |
| + redirect_counter.WaitForCount(1); |
| + page_counter.WaitForCount(1); |
| +} |
| + |
| // Checks that a subresource 301 redirect is followed. |
| IN_PROC_BROWSER_TEST_F(NoStatePrefetchBrowserTest, Prefetch301Subresource) { |
| RequestCounter script_counter; |