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 = |