Chromium Code Reviews| Index: chrome/browser/prerender/prerender_unittest.cc |
| diff --git a/chrome/browser/prerender/prerender_unittest.cc b/chrome/browser/prerender/prerender_unittest.cc |
| index 82b9e9666d8301ff63c6a55b5f6abbe41db6aefb..73ba4f997e7f41058127e6f5fb22089f11bfc48b 100644 |
| --- a/chrome/browser/prerender/prerender_unittest.cc |
| +++ b/chrome/browser/prerender/prerender_unittest.cc |
| @@ -642,6 +642,38 @@ TEST_F(PrerenderTest, DuplicateTest) { |
| ASSERT_EQ(prerender_contents, entry.get()); |
| } |
| +// Make sure that if queue a request, and a second prerender request for the |
|
mattcary
2017/01/10 15:00:50
Maybe say explicitly that this is the same as the
droger
2017/01/10 15:11:42
Done.
|
| +// same URL comes in, that the second request attaches to the first prerender, |
| +// and we don't use the second prerender contents. |
| +TEST_F(PrerenderTest, DuplicateTest_NoStatePrefetch) { |
| + RestorePrerenderMode restore_prerender_mode; |
| + prerender_manager()->SetMode( |
| + PrerenderManager::PRERENDER_MODE_NOSTATE_PREFETCH); |
| + |
| + SetConcurrency(2); |
| + GURL url("http://www.google.com/"); |
| + DummyPrerenderContents* prerender_contents = |
| + prerender_manager()->CreateNextPrerenderContents( |
| + url, |
| + FINAL_STATUS_USED); |
| + EXPECT_TRUE(AddSimplePrerender(url)); |
| + EXPECT_FALSE(prerender_manager()->next_prerender_contents()); |
| + EXPECT_TRUE(prerender_contents->prerendering_has_started()); |
| + |
| + DummyPrerenderContents* prerender_contents1 = |
| + prerender_manager()->CreateNextPrerenderContents( |
| + url, |
| + FINAL_STATUS_MANAGER_SHUTDOWN); |
| + EXPECT_TRUE(AddSimplePrerender(url)); |
| + EXPECT_EQ(prerender_contents1, |
| + prerender_manager()->next_prerender_contents()); |
| + EXPECT_FALSE(prerender_contents1->prerendering_has_started()); |
| + |
| + std::unique_ptr<PrerenderContents> entry = |
| + prerender_manager()->FindAndUseEntry(url); |
| + ASSERT_EQ(prerender_contents, entry.get()); |
| +} |
| + |
| // Ensure that we expire a prerendered page after the max. permitted time. |
| TEST_F(PrerenderTest, ExpireTest) { |
| base::SimpleTestTickClock* tick_clock = |