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

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

Issue 1854643002: Implement PrerenderManager::AddPrerenderForOffline() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addresses mmenke's comments Created 4 years, 8 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
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 <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 409 matching lines...) Expand 10 before | Expand all | Expand 10 after
420 420
421 TEST_F(PrerenderTest, PrerenderRespectsThirdPartyCookiesPref) { 421 TEST_F(PrerenderTest, PrerenderRespectsThirdPartyCookiesPref) {
422 GURL url("http://www.google.com/"); 422 GURL url("http://www.google.com/");
423 RestorePrerenderMode restore_prerender_mode; 423 RestorePrerenderMode restore_prerender_mode;
424 ASSERT_TRUE(PrerenderManager::IsPrerenderingPossible()); 424 ASSERT_TRUE(PrerenderManager::IsPrerenderingPossible());
425 425
426 profile()->GetPrefs()->SetBoolean(prefs::kBlockThirdPartyCookies, true); 426 profile()->GetPrefs()->SetBoolean(prefs::kBlockThirdPartyCookies, true);
427 EXPECT_FALSE(AddSimplePrerender(url)); 427 EXPECT_FALSE(AddSimplePrerender(url));
428 } 428 }
429 429
430 TEST_F(PrerenderTest, OfflinePrerenderDontRespectsThirdPartyCookiesPref) {
pasko 2016/04/25 11:29:11 s/DontRespects/DoesntRespect/
gabadie 2016/04/25 12:35:11 Done.
431 GURL url("http://www.google.com/");
432 RestorePrerenderMode restore_prerender_mode;
433 ASSERT_TRUE(PrerenderManager::IsPrerenderingPossible());
434
435 profile()->GetPrefs()->SetBoolean(prefs::kBlockThirdPartyCookies, true);
436 DummyPrerenderContents* prerender_contents =
437 prerender_manager()->CreateNextPrerenderContents(
438 url, ORIGIN_OFFLINE, FINAL_STATUS_MANAGER_SHUTDOWN);
439 scoped_ptr<PrerenderHandle> prerender_handle(
440 prerender_manager()->AddPrerenderForOffline(url, nullptr, kSize));
441 EXPECT_TRUE(prerender_handle);
442 EXPECT_TRUE(prerender_handle->IsPrerendering());
443 EXPECT_TRUE(prerender_contents->prerendering_has_started());
444 EXPECT_EQ(prerender_contents, prerender_handle->contents());
445 EXPECT_EQ(ORIGIN_OFFLINE, prerender_handle->contents()->origin());
446 }
447
430 TEST_F(PrerenderTest, FoundTest) { 448 TEST_F(PrerenderTest, FoundTest) {
431 GURL url("http://www.google.com/"); 449 GURL url("http://www.google.com/");
432 DummyPrerenderContents* prerender_contents = 450 DummyPrerenderContents* prerender_contents =
433 prerender_manager()->CreateNextPrerenderContents( 451 prerender_manager()->CreateNextPrerenderContents(
434 url, 452 url,
435 FINAL_STATUS_USED); 453 FINAL_STATUS_USED);
436 EXPECT_TRUE(AddSimplePrerender(url)); 454 EXPECT_TRUE(AddSimplePrerender(url));
437 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 455 EXPECT_TRUE(prerender_contents->prerendering_has_started());
438 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url)); 456 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url));
439 } 457 }
(...skipping 664 matching lines...) Expand 10 before | Expand all | Expand 10 after
1104 url, 1122 url,
1105 ORIGIN_EXTERNAL_REQUEST, 1123 ORIGIN_EXTERNAL_REQUEST,
1106 FINAL_STATUS_MANAGER_SHUTDOWN); 1124 FINAL_STATUS_MANAGER_SHUTDOWN);
1107 std::unique_ptr<PrerenderHandle> prerender_handle( 1125 std::unique_ptr<PrerenderHandle> prerender_handle(
1108 prerender_manager()->AddPrerenderFromExternalRequest( 1126 prerender_manager()->AddPrerenderFromExternalRequest(
1109 url, content::Referrer(), nullptr, kSize)); 1127 url, content::Referrer(), nullptr, kSize));
1110 EXPECT_FALSE(prerender_handle); 1128 EXPECT_FALSE(prerender_handle);
1111 EXPECT_FALSE(prerender_contents->prerendering_has_started()); 1129 EXPECT_FALSE(prerender_contents->prerendering_has_started());
1112 } 1130 }
1113 1131
1114 TEST_F(PrerenderTest,PrerenderAllowedOnCellularWithForcedOrigin) { 1132 TEST_F(PrerenderTest, OfflinePrerenderIgnoresThirdPartyCookiesPref) {
pasko 2016/04/25 11:29:11 This test has nothing to do with cookies pref, rig
gabadie 2016/04/25 12:35:11 Oh oups. I have mixed up mmenke's renaming proposa
1133 const Origin origins[] = {
1134 ORIGIN_EXTERNAL_REQUEST_FORCED_CELLULAR,
1135 ORIGIN_OFFLINE,
1136 };
1137
1115 EnablePrerender(); 1138 EnablePrerender();
1116 std::unique_ptr<net::NetworkChangeNotifier> mock( 1139 std::unique_ptr<net::NetworkChangeNotifier> mock(
1117 new MockNetworkChangeNotifier4G); 1140 new MockNetworkChangeNotifier4G);
1118 EXPECT_TRUE(net::NetworkChangeNotifier::IsConnectionCellular( 1141 EXPECT_TRUE(net::NetworkChangeNotifier::IsConnectionCellular(
1119 net::NetworkChangeNotifier::GetConnectionType())); 1142 net::NetworkChangeNotifier::GetConnectionType()));
1120 GURL url("http://www.google.com/"); 1143 GURL url("http://www.google.com/");
1121 DummyPrerenderContents* prerender_contents = 1144 for (Origin origin: origins) {
1122 prerender_manager()->CreateNextPrerenderContents( 1145 DummyPrerenderContents* prerender_contents =
1123 url, 1146 prerender_manager()->CreateNextPrerenderContents(
1124 ORIGIN_EXTERNAL_REQUEST_FORCED_CELLULAR, 1147 url, origin, FINAL_STATUS_USED);
1125 FINAL_STATUS_USED); 1148 scoped_ptr<PrerenderHandle> prerender_handle;
1126 std::unique_ptr<PrerenderHandle> prerender_handle( 1149 if (origin == ORIGIN_OFFLINE) {(
1127 prerender_manager()->AddPrerenderOnCellularFromExternalRequest( 1150 prerender_handle.reset(prerender_manager()->AddPrerenderForOffline(
1128 url, content::Referrer(), nullptr, kSize)); 1151 url, nullptr, kSize)));
1129 EXPECT_TRUE(prerender_handle); 1152 } else {(
1130 EXPECT_TRUE(prerender_handle->IsPrerendering()); 1153 prerender_handle.reset(
1131 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 1154 prerender_manager()->AddPrerenderOnCellularFromExternalRequest(
1132 EXPECT_EQ(prerender_contents, prerender_handle->contents()); 1155 url, content::Referrer(), nullptr, kSize)));
1133 EXPECT_EQ(ORIGIN_EXTERNAL_REQUEST_FORCED_CELLULAR, 1156 }
1134 prerender_handle->contents()->origin()); 1157 EXPECT_TRUE(prerender_handle);
1135 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url)); 1158 EXPECT_TRUE(prerender_handle->IsPrerendering());
1159 EXPECT_TRUE(prerender_contents->prerendering_has_started());
1160 EXPECT_EQ(prerender_contents, prerender_handle->contents());
1161 EXPECT_EQ(origin, prerender_handle->contents()->origin());
1162 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url));
1163 }
1136 } 1164 }
1137 1165
1138 TEST_F(PrerenderTest, LinkManagerCancel) { 1166 TEST_F(PrerenderTest, LinkManagerCancel) {
1139 EXPECT_TRUE(IsEmptyPrerenderLinkManager()); 1167 EXPECT_TRUE(IsEmptyPrerenderLinkManager());
1140 GURL url("http://www.myexample.com"); 1168 GURL url("http://www.myexample.com");
1141 DummyPrerenderContents* prerender_contents = 1169 DummyPrerenderContents* prerender_contents =
1142 prerender_manager()->CreateNextPrerenderContents( 1170 prerender_manager()->CreateNextPrerenderContents(
1143 url, FINAL_STATUS_CANCELLED); 1171 url, FINAL_STATUS_CANCELLED);
1144 1172
1145 EXPECT_TRUE(AddSimplePrerender(url)); 1173 EXPECT_TRUE(AddSimplePrerender(url));
(...skipping 510 matching lines...) Expand 10 before | Expand all | Expand 10 after
1656 CHECK(prerender_handle.get()); 1684 CHECK(prerender_handle.get());
1657 EXPECT_TRUE(prerender_handle->IsPrerendering()); 1685 EXPECT_TRUE(prerender_handle->IsPrerendering());
1658 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 1686 EXPECT_TRUE(prerender_contents->prerendering_has_started());
1659 EXPECT_EQ(prerender_contents, prerender_handle->contents()); 1687 EXPECT_EQ(prerender_contents, prerender_handle->contents());
1660 EXPECT_EQ(ORIGIN_INSTANT, prerender_handle->contents()->origin()); 1688 EXPECT_EQ(ORIGIN_INSTANT, prerender_handle->contents()->origin());
1661 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url)); 1689 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url));
1662 EXPECT_FALSE(prerender_handle->IsPrerendering()); 1690 EXPECT_FALSE(prerender_handle->IsPrerendering());
1663 } 1691 }
1664 1692
1665 } // namespace prerender 1693 } // namespace prerender
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698