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

Side by Side Diff: chrome/browser/prerender/prerender_unittest.cc

Issue 121293002: Add new prerender origin type for <link rel=next ...> launched prerenders. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix unit tests Created 6 years, 12 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 "base/command_line.h" 5 #include "base/command_line.h"
6 #include "base/format_macros.h" 6 #include "base/format_macros.h"
7 #include "base/memory/scoped_vector.h" 7 #include "base/memory/scoped_vector.h"
8 #include "base/message_loop/message_loop.h" 8 #include "base/message_loop/message_loop.h"
9 #include "base/metrics/field_trial.h" 9 #include "base/metrics/field_trial.h"
10 #include "base/strings/stringprintf.h" 10 #include "base/strings/stringprintf.h"
(...skipping 667 matching lines...) Expand 10 before | Expand all | Expand 10 after
678 678
679 GURL pending_url("http://news.google.com/"); 679 GURL pending_url("http://news.google.com/");
680 680
681 DummyPrerenderContents* pending_prerender_contents = 681 DummyPrerenderContents* pending_prerender_contents =
682 prerender_manager()->CreateNextPrerenderContents( 682 prerender_manager()->CreateNextPrerenderContents(
683 pending_url, 683 pending_url,
684 ORIGIN_GWS_PRERENDER, 684 ORIGIN_GWS_PRERENDER,
685 FINAL_STATUS_USED); 685 FINAL_STATUS_USED);
686 scoped_ptr<PrerenderHandle> pending_prerender_handle( 686 scoped_ptr<PrerenderHandle> pending_prerender_handle(
687 prerender_manager()->AddPrerenderFromLinkRelPrerender( 687 prerender_manager()->AddPrerenderFromLinkRelPrerender(
688 child_id, route_id, pending_url, 688 child_id, route_id, pending_url, kDefaultRelTypes,
689 Referrer(url, blink::WebReferrerPolicyDefault), kSize)); 689 Referrer(url, blink::WebReferrerPolicyDefault), kSize));
690 CHECK(pending_prerender_handle.get()); 690 CHECK(pending_prerender_handle.get());
691 EXPECT_FALSE(pending_prerender_handle->IsPrerendering()); 691 EXPECT_FALSE(pending_prerender_handle->IsPrerendering());
692 692
693 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 693 EXPECT_TRUE(prerender_contents->prerendering_has_started());
694 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url)); 694 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url));
695 695
696 EXPECT_TRUE(pending_prerender_handle->IsPrerendering()); 696 EXPECT_TRUE(pending_prerender_handle->IsPrerendering());
697 ASSERT_EQ(pending_prerender_contents, 697 ASSERT_EQ(pending_prerender_contents,
698 prerender_manager()->FindAndUseEntry(pending_url)); 698 prerender_manager()->FindAndUseEntry(pending_url));
(...skipping 16 matching lines...) Expand all
715 // This pending URL has an unsupported scheme, and won't be able 715 // This pending URL has an unsupported scheme, and won't be able
716 // to start. 716 // to start.
717 GURL pending_url("ftp://news.google.com/"); 717 GURL pending_url("ftp://news.google.com/");
718 718
719 prerender_manager()->CreateNextPrerenderContents( 719 prerender_manager()->CreateNextPrerenderContents(
720 pending_url, 720 pending_url,
721 ORIGIN_GWS_PRERENDER, 721 ORIGIN_GWS_PRERENDER,
722 FINAL_STATUS_UNSUPPORTED_SCHEME); 722 FINAL_STATUS_UNSUPPORTED_SCHEME);
723 scoped_ptr<PrerenderHandle> pending_prerender_handle( 723 scoped_ptr<PrerenderHandle> pending_prerender_handle(
724 prerender_manager()->AddPrerenderFromLinkRelPrerender( 724 prerender_manager()->AddPrerenderFromLinkRelPrerender(
725 child_id, route_id, pending_url, 725 child_id, route_id, pending_url, kDefaultRelTypes,
726 Referrer(url, blink::WebReferrerPolicyDefault), kSize)); 726 Referrer(url, blink::WebReferrerPolicyDefault), kSize));
727 DCHECK(pending_prerender_handle.get()); 727 DCHECK(pending_prerender_handle.get());
728 EXPECT_FALSE(pending_prerender_handle->IsPrerendering()); 728 EXPECT_FALSE(pending_prerender_handle->IsPrerendering());
729 729
730 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 730 EXPECT_TRUE(prerender_contents->prerendering_has_started());
731 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url)); 731 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url));
732 732
733 EXPECT_FALSE(pending_prerender_handle->IsPrerendering()); 733 EXPECT_FALSE(pending_prerender_handle->IsPrerendering());
734 } 734 }
735 735
736 TEST_F(PrerenderTest, CancelPendingPrerenderTest) { 736 TEST_F(PrerenderTest, CancelPendingPrerenderTest) {
737 GURL url("http://www.google.com/"); 737 GURL url("http://www.google.com/");
738 DummyPrerenderContents* prerender_contents = 738 DummyPrerenderContents* prerender_contents =
739 prerender_manager()->CreateNextPrerenderContents( 739 prerender_manager()->CreateNextPrerenderContents(
740 url, 740 url,
741 FINAL_STATUS_USED); 741 FINAL_STATUS_USED);
742 EXPECT_TRUE(AddSimplePrerender(url)); 742 EXPECT_TRUE(AddSimplePrerender(url));
743 743
744 int child_id; 744 int child_id;
745 int route_id; 745 int route_id;
746 ASSERT_TRUE(prerender_contents->GetChildId(&child_id)); 746 ASSERT_TRUE(prerender_contents->GetChildId(&child_id));
747 ASSERT_TRUE(prerender_contents->GetRouteId(&route_id)); 747 ASSERT_TRUE(prerender_contents->GetRouteId(&route_id));
748 748
749 GURL pending_url("http://news.google.com/"); 749 GURL pending_url("http://news.google.com/");
750 750
751 scoped_ptr<PrerenderHandle> pending_prerender_handle( 751 scoped_ptr<PrerenderHandle> pending_prerender_handle(
752 prerender_manager()->AddPrerenderFromLinkRelPrerender( 752 prerender_manager()->AddPrerenderFromLinkRelPrerender(
753 child_id, route_id, pending_url, 753 child_id, route_id, pending_url, kDefaultRelTypes,
754 Referrer(url, blink::WebReferrerPolicyDefault), kSize)); 754 Referrer(url, blink::WebReferrerPolicyDefault), kSize));
755 CHECK(pending_prerender_handle.get()); 755 CHECK(pending_prerender_handle.get());
756 EXPECT_FALSE(pending_prerender_handle->IsPrerendering()); 756 EXPECT_FALSE(pending_prerender_handle->IsPrerendering());
757 757
758 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 758 EXPECT_TRUE(prerender_contents->prerendering_has_started());
759 759
760 pending_prerender_handle.reset(); 760 pending_prerender_handle.reset();
761 761
762 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url)); 762 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url));
763 } 763 }
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
804 EXPECT_EQ(null, prerender_manager()->FindEntry(url)); 804 EXPECT_EQ(null, prerender_manager()->FindEntry(url));
805 } 805 }
806 806
807 // Tests that prerendering does launch rel=next prerenders with the field trial. 807 // Tests that prerendering does launch rel=next prerenders with the field trial.
808 TEST_F(PrerenderTest, RelNextByFieldTrial) { 808 TEST_F(PrerenderTest, RelNextByFieldTrial) {
809 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("PrerenderRelNextTrial", 809 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("PrerenderRelNextTrial",
810 "Yes")); 810 "Yes"));
811 GURL url("http://www.google.com/"); 811 GURL url("http://www.google.com/");
812 DummyPrerenderContents* prerender_contents = 812 DummyPrerenderContents* prerender_contents =
813 prerender_manager()->CreateNextPrerenderContents( 813 prerender_manager()->CreateNextPrerenderContents(
814 url, FINAL_STATUS_MANAGER_SHUTDOWN); 814 url, ORIGIN_LINK_REL_NEXT, FINAL_STATUS_MANAGER_SHUTDOWN);
815 815
816 prerender_link_manager()->OnAddPrerender( 816 prerender_link_manager()->OnAddPrerender(
817 kDefaultChildId, GetNextPrerenderID(), url, PrerenderRelTypeNext, 817 kDefaultChildId, GetNextPrerenderID(), url, PrerenderRelTypeNext,
818 Referrer(), kSize, kDefaultRenderViewRouteId); 818 Referrer(), kSize, kDefaultRenderViewRouteId);
819 EXPECT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url)); 819 EXPECT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url));
820 } 820 }
821 821
822 // Tests that prerendering is cancelled when we launch a second prerender of 822 // Tests that prerendering is cancelled when we launch a second prerender of
823 // the same target within a short time interval. 823 // the same target within a short time interval.
824 TEST_F(PrerenderTest, RecentlyVisited) { 824 TEST_F(PrerenderTest, RecentlyVisited) {
(...skipping 681 matching lines...) Expand 10 before | Expand all | Expand 10 after
1506 CHECK(prerender_handle.get()); 1506 CHECK(prerender_handle.get());
1507 EXPECT_TRUE(prerender_handle->IsPrerendering()); 1507 EXPECT_TRUE(prerender_handle->IsPrerendering());
1508 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 1508 EXPECT_TRUE(prerender_contents->prerendering_has_started());
1509 EXPECT_EQ(prerender_contents, prerender_handle->contents()); 1509 EXPECT_EQ(prerender_contents, prerender_handle->contents());
1510 EXPECT_EQ(ORIGIN_INSTANT, prerender_handle->contents()->origin()); 1510 EXPECT_EQ(ORIGIN_INSTANT, prerender_handle->contents()->origin());
1511 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url)); 1511 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url));
1512 EXPECT_FALSE(prerender_handle->IsPrerendering()); 1512 EXPECT_FALSE(prerender_handle->IsPrerendering());
1513 } 1513 }
1514 1514
1515 } // namespace prerender 1515 } // namespace prerender
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698