Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <stddef.h> | 5 #include <stddef.h> |
| 6 #include <stdint.h> | 6 #include <stdint.h> |
| 7 | 7 |
| 8 #include <map> | 8 #include <map> |
| 9 #include <utility> | 9 #include <utility> |
| 10 | 10 |
| (...skipping 624 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 635 EXPECT_TRUE(AddSimplePrerender(url)); | 635 EXPECT_TRUE(AddSimplePrerender(url)); |
| 636 EXPECT_EQ(prerender_contents1, | 636 EXPECT_EQ(prerender_contents1, |
| 637 prerender_manager()->next_prerender_contents()); | 637 prerender_manager()->next_prerender_contents()); |
| 638 EXPECT_FALSE(prerender_contents1->prerendering_has_started()); | 638 EXPECT_FALSE(prerender_contents1->prerendering_has_started()); |
| 639 | 639 |
| 640 std::unique_ptr<PrerenderContents> entry = | 640 std::unique_ptr<PrerenderContents> entry = |
| 641 prerender_manager()->FindAndUseEntry(url); | 641 prerender_manager()->FindAndUseEntry(url); |
| 642 ASSERT_EQ(prerender_contents, entry.get()); | 642 ASSERT_EQ(prerender_contents, entry.get()); |
| 643 } | 643 } |
| 644 | 644 |
| 645 // 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.
| |
| 646 // same URL comes in, that the second request attaches to the first prerender, | |
| 647 // and we don't use the second prerender contents. | |
| 648 TEST_F(PrerenderTest, DuplicateTest_NoStatePrefetch) { | |
| 649 RestorePrerenderMode restore_prerender_mode; | |
| 650 prerender_manager()->SetMode( | |
| 651 PrerenderManager::PRERENDER_MODE_NOSTATE_PREFETCH); | |
| 652 | |
| 653 SetConcurrency(2); | |
| 654 GURL url("http://www.google.com/"); | |
| 655 DummyPrerenderContents* prerender_contents = | |
| 656 prerender_manager()->CreateNextPrerenderContents( | |
| 657 url, | |
| 658 FINAL_STATUS_USED); | |
| 659 EXPECT_TRUE(AddSimplePrerender(url)); | |
| 660 EXPECT_FALSE(prerender_manager()->next_prerender_contents()); | |
| 661 EXPECT_TRUE(prerender_contents->prerendering_has_started()); | |
| 662 | |
| 663 DummyPrerenderContents* prerender_contents1 = | |
| 664 prerender_manager()->CreateNextPrerenderContents( | |
| 665 url, | |
| 666 FINAL_STATUS_MANAGER_SHUTDOWN); | |
| 667 EXPECT_TRUE(AddSimplePrerender(url)); | |
| 668 EXPECT_EQ(prerender_contents1, | |
| 669 prerender_manager()->next_prerender_contents()); | |
| 670 EXPECT_FALSE(prerender_contents1->prerendering_has_started()); | |
| 671 | |
| 672 std::unique_ptr<PrerenderContents> entry = | |
| 673 prerender_manager()->FindAndUseEntry(url); | |
| 674 ASSERT_EQ(prerender_contents, entry.get()); | |
| 675 } | |
| 676 | |
| 645 // Ensure that we expire a prerendered page after the max. permitted time. | 677 // Ensure that we expire a prerendered page after the max. permitted time. |
| 646 TEST_F(PrerenderTest, ExpireTest) { | 678 TEST_F(PrerenderTest, ExpireTest) { |
| 647 base::SimpleTestTickClock* tick_clock = | 679 base::SimpleTestTickClock* tick_clock = |
| 648 OverridePrerenderManagerTimeTicks(prerender_manager()); | 680 OverridePrerenderManagerTimeTicks(prerender_manager()); |
| 649 GURL url("http://www.google.com/"); | 681 GURL url("http://www.google.com/"); |
| 650 DummyPrerenderContents* prerender_contents = | 682 DummyPrerenderContents* prerender_contents = |
| 651 prerender_manager()->CreateNextPrerenderContents( | 683 prerender_manager()->CreateNextPrerenderContents( |
| 652 url, | 684 url, |
| 653 FINAL_STATUS_TIMED_OUT); | 685 FINAL_STATUS_TIMED_OUT); |
| 654 EXPECT_TRUE(AddSimplePrerender(url)); | 686 EXPECT_TRUE(AddSimplePrerender(url)); |
| (...skipping 1293 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1948 prerender_contents->SetPrerenderMode(PREFETCH_ONLY); | 1980 prerender_contents->SetPrerenderMode(PREFETCH_ONLY); |
| 1949 EXPECT_TRUE(prerender_contents->IsValidHttpMethod("GET")); | 1981 EXPECT_TRUE(prerender_contents->IsValidHttpMethod("GET")); |
| 1950 EXPECT_TRUE(prerender_contents->IsValidHttpMethod("HEAD")); | 1982 EXPECT_TRUE(prerender_contents->IsValidHttpMethod("HEAD")); |
| 1951 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("OPTIONS")); | 1983 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("OPTIONS")); |
| 1952 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("POST")); | 1984 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("POST")); |
| 1953 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("TRACE")); | 1985 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("TRACE")); |
| 1954 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("WHATEVER")); | 1986 EXPECT_FALSE(prerender_contents->IsValidHttpMethod("WHATEVER")); |
| 1955 } | 1987 } |
| 1956 | 1988 |
| 1957 } // namespace prerender | 1989 } // namespace prerender |
| OLD | NEW |