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

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

Issue 550453002: Avoid doing periodic prerender cleanup when there are no contents. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Update tests Created 6 years, 3 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
« no previous file with comments | « chrome/browser/prerender/prerender_manager.cc ('k') | tools/metrics/histograms/histograms.xml » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 <map> 5 #include <map>
6 #include <utility> 6 #include <utility>
7 7
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/format_macros.h" 9 #include "base/format_macros.h"
10 #include "base/memory/scoped_vector.h" 10 #include "base/memory/scoped_vector.h"
(...skipping 898 matching lines...) Expand 10 before | Expand all | Expand 10 after
909 DummyPrerenderContents* prerender_contents = 909 DummyPrerenderContents* prerender_contents =
910 prerender_manager()->CreateNextPrerenderContents( 910 prerender_manager()->CreateNextPrerenderContents(
911 url, FINAL_STATUS_USED); 911 url, FINAL_STATUS_USED);
912 EXPECT_TRUE(AddSimplePrerender(url)); 912 EXPECT_TRUE(AddSimplePrerender(url));
913 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 913 EXPECT_TRUE(prerender_contents->prerendering_has_started());
914 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url)); 914 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url));
915 } 915 }
916 916
917 // Tests that our PPLT dummy prerender gets created properly. 917 // Tests that our PPLT dummy prerender gets created properly.
918 TEST_F(PrerenderTest, PPLTDummy) { 918 TEST_F(PrerenderTest, PPLTDummy) {
919 RestorePrerenderMode restore_prerender_mode;
920 PrerenderManager::SetMode(
921 PrerenderManager::PRERENDER_MODE_EXPERIMENT_MATCH_COMPLETE_GROUP);
922
919 GURL url("http://www.google.com/"); 923 GURL url("http://www.google.com/");
920 DummyPrerenderContents* prerender_contents = 924 DummyPrerenderContents* prerender_contents =
921 prerender_manager()->CreateNextPrerenderContents( 925 prerender_manager()->CreateNextPrerenderContents(
922 url, FINAL_STATUS_UNSUPPORTED_SCHEME); 926 url, FINAL_STATUS_UNSUPPORTED_SCHEME);
923 EXPECT_TRUE(AddSimplePrerender(url)); 927 EXPECT_TRUE(AddSimplePrerender(url));
924 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 928 EXPECT_TRUE(prerender_contents->prerendering_has_started());
925 EXPECT_FALSE(IsEmptyPrerenderLinkManager()); 929 EXPECT_FALSE(IsEmptyPrerenderLinkManager());
926 930
927 DummyPrerenderContents* pplt_dummy_contents = 931 DummyPrerenderContents* pplt_dummy_contents =
928 prerender_manager()->CreateNextPrerenderContents(url, 932 prerender_manager()->CreateNextPrerenderContents(url,
929 FINAL_STATUS_USED); 933 FINAL_STATUS_USED);
930 GURL ftp_url("ftp://ftp.google.com/"); 934 GURL ftp_url("ftp://ftp.google.com/");
931 // Adding this ftp URL will force the expected unsupported scheme error. 935 // Adding this ftp URL will force the expected unsupported scheme error.
932 prerender_contents->AddAliasURL(ftp_url); 936 prerender_contents->AddAliasURL(ftp_url);
933 EXPECT_FALSE(IsEmptyPrerenderLinkManager()); 937 EXPECT_FALSE(IsEmptyPrerenderLinkManager());
934 938
935 ASSERT_EQ(pplt_dummy_contents, prerender_manager()->FindAndUseEntry(url)); 939 ASSERT_EQ(pplt_dummy_contents, prerender_manager()->FindAndUseEntry(url));
936 EXPECT_TRUE(IsEmptyPrerenderLinkManager()); 940 EXPECT_TRUE(IsEmptyPrerenderLinkManager());
937 } 941 }
938 942
939 // Tests that our PPLT dummy prerender gets created properly, even 943 // Tests that our PPLT dummy prerender gets created properly, even
940 // when navigating to a page that has been recently navigated to. 944 // when navigating to a page that has been recently navigated to.
941 TEST_F(PrerenderTest, RecentlyVisitedPPLTDummy) { 945 TEST_F(PrerenderTest, RecentlyVisitedPPLTDummy) {
946 RestorePrerenderMode restore_prerender_mode;
947 PrerenderManager::SetMode(
948 PrerenderManager::PRERENDER_MODE_EXPERIMENT_MATCH_COMPLETE_GROUP);
949
942 GURL url("http://www.google.com/"); 950 GURL url("http://www.google.com/");
943 DummyPrerenderContents* prerender_contents = 951 DummyPrerenderContents* prerender_contents =
944 prerender_manager()->CreateNextPrerenderContents( 952 prerender_manager()->CreateNextPrerenderContents(
945 url, FINAL_STATUS_UNSUPPORTED_SCHEME); 953 url, FINAL_STATUS_UNSUPPORTED_SCHEME);
946 EXPECT_TRUE(AddSimplePrerender(url)); 954 EXPECT_TRUE(AddSimplePrerender(url));
947 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 955 EXPECT_TRUE(prerender_contents->prerendering_has_started());
948 956
949 DummyPrerenderContents* pplt_dummy_contents = 957 DummyPrerenderContents* pplt_dummy_contents =
950 prerender_manager()->CreateNextPrerenderContents(url, 958 prerender_manager()->CreateNextPrerenderContents(url,
951 FINAL_STATUS_USED); 959 FINAL_STATUS_USED);
952 prerender_manager()->RecordNavigation(url); 960 prerender_manager()->RecordNavigation(url);
953 GURL ftp_url("ftp://ftp.google.com/"); 961 GURL ftp_url("ftp://ftp.google.com/");
954 prerender_contents->AddAliasURL(ftp_url); 962 prerender_contents->AddAliasURL(ftp_url);
955 963
956 ASSERT_EQ(pplt_dummy_contents, prerender_manager()->FindAndUseEntry(url)); 964 ASSERT_EQ(pplt_dummy_contents, prerender_manager()->FindAndUseEntry(url));
957 } 965 }
958 966
959 TEST_F(PrerenderTest, PPLTLateCancel) { 967 TEST_F(PrerenderTest, PPLTLateCancel) {
968 RestorePrerenderMode restore_prerender_mode;
969 PrerenderManager::SetMode(
970 PrerenderManager::PRERENDER_MODE_EXPERIMENT_MATCH_COMPLETE_GROUP);
971
960 GURL url("http://www.google.com"); 972 GURL url("http://www.google.com");
961 DummyPrerenderContents* prerender_contents = 973 DummyPrerenderContents* prerender_contents =
962 prerender_manager()->CreateNextPrerenderContents( 974 prerender_manager()->CreateNextPrerenderContents(
963 url, FINAL_STATUS_JAVASCRIPT_ALERT); 975 url, FINAL_STATUS_JAVASCRIPT_ALERT);
964 EXPECT_TRUE(AddSimplePrerender(url)); 976 EXPECT_TRUE(AddSimplePrerender(url));
965 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 977 EXPECT_TRUE(prerender_contents->prerendering_has_started());
966 // Force the creation of a match complete dummy. 978 // Force the creation of a match complete dummy.
967 DummyPrerenderContents* duplicate_prerender_contents = 979 DummyPrerenderContents* duplicate_prerender_contents =
968 prerender_manager()->CreateNextPrerenderContents(url, 980 prerender_manager()->CreateNextPrerenderContents(url,
969 FINAL_STATUS_CANCELLED); 981 FINAL_STATUS_CANCELLED);
(...skipping 601 matching lines...) Expand 10 before | Expand all | Expand 10 after
1571 CHECK(prerender_handle.get()); 1583 CHECK(prerender_handle.get());
1572 EXPECT_TRUE(prerender_handle->IsPrerendering()); 1584 EXPECT_TRUE(prerender_handle->IsPrerendering());
1573 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 1585 EXPECT_TRUE(prerender_contents->prerendering_has_started());
1574 EXPECT_EQ(prerender_contents, prerender_handle->contents()); 1586 EXPECT_EQ(prerender_contents, prerender_handle->contents());
1575 EXPECT_EQ(ORIGIN_INSTANT, prerender_handle->contents()->origin()); 1587 EXPECT_EQ(ORIGIN_INSTANT, prerender_handle->contents()->origin());
1576 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url)); 1588 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url));
1577 EXPECT_FALSE(prerender_handle->IsPrerendering()); 1589 EXPECT_FALSE(prerender_handle->IsPrerendering());
1578 } 1590 }
1579 1591
1580 } // namespace prerender 1592 } // namespace prerender
OLDNEW
« no previous file with comments | « chrome/browser/prerender/prerender_manager.cc ('k') | tools/metrics/histograms/histograms.xml » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698