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

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

Issue 519583005: Remove PrerenderManager.enabled_ and related members. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Re: #3. 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
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"
11 #include "base/message_loop/message_loop.h" 11 #include "base/message_loop/message_loop.h"
12 #include "base/metrics/field_trial.h" 12 #include "base/metrics/field_trial.h"
13 #include "base/prefs/pref_service.h"
13 #include "base/strings/stringprintf.h" 14 #include "base/strings/stringprintf.h"
14 #include "base/time/time.h" 15 #include "base/time/time.h"
16 #include "chrome/browser/net/prediction_options.h"
15 #include "chrome/browser/prerender/prerender_contents.h" 17 #include "chrome/browser/prerender/prerender_contents.h"
16 #include "chrome/browser/prerender/prerender_handle.h" 18 #include "chrome/browser/prerender/prerender_handle.h"
17 #include "chrome/browser/prerender/prerender_link_manager.h" 19 #include "chrome/browser/prerender/prerender_link_manager.h"
18 #include "chrome/browser/prerender/prerender_manager.h" 20 #include "chrome/browser/prerender/prerender_manager.h"
19 #include "chrome/browser/prerender/prerender_origin.h" 21 #include "chrome/browser/prerender/prerender_origin.h"
20 #include "chrome/common/chrome_switches.h" 22 #include "chrome/common/chrome_switches.h"
23 #include "chrome/common/pref_names.h"
21 #include "chrome/common/prerender_types.h" 24 #include "chrome/common/prerender_types.h"
22 #include "chrome/test/base/testing_browser_process.h" 25 #include "chrome/test/base/testing_browser_process.h"
23 #include "chrome/test/base/testing_profile.h" 26 #include "chrome/test/base/testing_profile.h"
24 #include "content/public/browser/render_view_host.h" 27 #include "content/public/browser/render_view_host.h"
25 #include "content/public/test/test_browser_thread.h" 28 #include "content/public/test/test_browser_thread.h"
26 #include "testing/gtest/include/gtest/gtest.h" 29 #include "testing/gtest/include/gtest/gtest.h"
27 #include "ui/gfx/size.h" 30 #include "ui/gfx/size.h"
28 #include "url/gurl.h" 31 #include "url/gurl.h"
29 32
30 using base::Time; 33 using base::Time;
(...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after
386 // Shorthand to add a simple prerender with a reasonable source. Returns 389 // Shorthand to add a simple prerender with a reasonable source. Returns
387 // true iff the prerender has been added to the PrerenderManager by the 390 // true iff the prerender has been added to the PrerenderManager by the
388 // PrerenderLinkManager and the PrerenderManager returned a handle. 391 // PrerenderLinkManager and the PrerenderManager returned a handle.
389 bool AddSimplePrerender(const GURL& url) { 392 bool AddSimplePrerender(const GURL& url) {
390 prerender_link_manager()->OnAddPrerender( 393 prerender_link_manager()->OnAddPrerender(
391 kDefaultChildId, GetNextPrerenderID(), url, kDefaultRelTypes, 394 kDefaultChildId, GetNextPrerenderID(), url, kDefaultRelTypes,
392 content::Referrer(), kSize, kDefaultRenderViewRouteId); 395 content::Referrer(), kSize, kDefaultRenderViewRouteId);
393 return LauncherHasRunningPrerender(kDefaultChildId, last_prerender_id()); 396 return LauncherHasRunningPrerender(kDefaultChildId, last_prerender_id());
394 } 397 }
395 398
399 void DisablePrerender() {
400 profile_.GetPrefs()->SetInteger(
401 prefs::kNetworkPredictionOptions,
402 chrome_browser_net::NETWORK_PREDICTION_NEVER);
403 }
404
396 private: 405 private:
397 PrerenderTracker* prerender_tracker() { 406 PrerenderTracker* prerender_tracker() {
398 return g_browser_process->prerender_tracker(); 407 return g_browser_process->prerender_tracker();
399 } 408 }
400 409
401 // Needed to pass PrerenderManager's DCHECKs. 410 // Needed to pass PrerenderManager's DCHECKs.
402 TestingProfile profile_; 411 TestingProfile profile_;
403 base::MessageLoop message_loop_; 412 base::MessageLoop message_loop_;
404 content::TestBrowserThread ui_thread_; 413 content::TestBrowserThread ui_thread_;
405 scoped_ptr<UnitTestPrerenderManager> prerender_manager_; 414 scoped_ptr<UnitTestPrerenderManager> prerender_manager_;
(...skipping 617 matching lines...) Expand 10 before | Expand all | Expand 10 after
1023 prerender_manager()->CreateNextPrerenderContents( 1032 prerender_manager()->CreateNextPrerenderContents(
1024 url, FINAL_STATUS_CANCELLED); 1033 url, FINAL_STATUS_CANCELLED);
1025 EXPECT_TRUE(AddSimplePrerender(url)); 1034 EXPECT_TRUE(AddSimplePrerender(url));
1026 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 1035 EXPECT_TRUE(prerender_contents->prerendering_has_started());
1027 prerender_manager()->CancelAllPrerenders(); 1036 prerender_manager()->CancelAllPrerenders();
1028 const DummyPrerenderContents* null = NULL; 1037 const DummyPrerenderContents* null = NULL;
1029 EXPECT_EQ(null, prerender_manager()->FindEntry(url)); 1038 EXPECT_EQ(null, prerender_manager()->FindEntry(url));
1030 } 1039 }
1031 1040
1032 TEST_F(PrerenderTest, OmniboxNotAllowedWhenDisabled) { 1041 TEST_F(PrerenderTest, OmniboxNotAllowedWhenDisabled) {
1033 prerender_manager()->set_enabled(false); 1042 DisablePrerender();
1034 EXPECT_FALSE(prerender_manager()->AddPrerenderFromOmnibox( 1043 EXPECT_FALSE(prerender_manager()->AddPrerenderFromOmnibox(
1035 GURL("http://www.example.com"), NULL, gfx::Size())); 1044 GURL("http://www.example.com"), NULL, gfx::Size()));
1036 } 1045 }
1037 1046
1038 TEST_F(PrerenderTest, LinkRelNotAllowedWhenDisabled) { 1047 TEST_F(PrerenderTest, LinkRelNotAllowedWhenDisabled) {
1039 prerender_manager()->set_enabled(false); 1048 DisablePrerender();
1040 EXPECT_FALSE(AddSimplePrerender( 1049 EXPECT_FALSE(AddSimplePrerender(
1041 GURL("http://www.example.com"))); 1050 GURL("http://www.example.com")));
1042 } 1051 }
1043 1052
1044 TEST_F(PrerenderTest, LinkManagerCancel) { 1053 TEST_F(PrerenderTest, LinkManagerCancel) {
1045 EXPECT_TRUE(IsEmptyPrerenderLinkManager()); 1054 EXPECT_TRUE(IsEmptyPrerenderLinkManager());
1046 GURL url("http://www.myexample.com"); 1055 GURL url("http://www.myexample.com");
1047 DummyPrerenderContents* prerender_contents = 1056 DummyPrerenderContents* prerender_contents =
1048 prerender_manager()->CreateNextPrerenderContents( 1057 prerender_manager()->CreateNextPrerenderContents(
1049 url, FINAL_STATUS_CANCELLED); 1058 url, FINAL_STATUS_CANCELLED);
(...skipping 487 matching lines...) Expand 10 before | Expand all | Expand 10 after
1537 prerender_manager()->AdvanceTimeTicks(wait_for_first_prerender_to_expire); 1546 prerender_manager()->AdvanceTimeTicks(wait_for_first_prerender_to_expire);
1538 EXPECT_EQ(null, prerender_manager()->FindEntry(first_url)); 1547 EXPECT_EQ(null, prerender_manager()->FindEntry(first_url));
1539 EXPECT_EQ(second_prerender_contents, 1548 EXPECT_EQ(second_prerender_contents,
1540 prerender_manager()->FindAndUseEntry(second_url)); 1549 prerender_manager()->FindAndUseEntry(second_url));
1541 } 1550 }
1542 1551
1543 TEST_F(PrerenderTest, InstantSearchNotAllowedWhenDisabled) { 1552 TEST_F(PrerenderTest, InstantSearchNotAllowedWhenDisabled) {
1544 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( 1553 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial(
1545 "EmbeddedSearch", 1554 "EmbeddedSearch",
1546 "Group82 espv:8 use_cacheable_ntp:1 prefetch_results:1")); 1555 "Group82 espv:8 use_cacheable_ntp:1 prefetch_results:1"));
1547 prerender_manager()->set_enabled(false); 1556 DisablePrerender();
1548 EXPECT_FALSE(prerender_manager()->AddPrerenderForInstant( 1557 EXPECT_FALSE(prerender_manager()->AddPrerenderForInstant(
1549 GURL("http://www.example.com/instant_search"), NULL, gfx::Size())); 1558 GURL("http://www.example.com/instant_search"), NULL, gfx::Size()));
1550 } 1559 }
1551 1560
1552 TEST_F(PrerenderTest, PrerenderContentsForInstantSearch) { 1561 TEST_F(PrerenderTest, PrerenderContentsForInstantSearch) {
1553 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( 1562 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial(
1554 "EmbeddedSearch", 1563 "EmbeddedSearch",
1555 "Group82 espv:8 use_cacheable_ntp:1 prefetch_results:1")); 1564 "Group82 espv:8 use_cacheable_ntp:1 prefetch_results:1"));
1556 GURL url("http://www.example.com/instant_search"); 1565 GURL url("http://www.example.com/instant_search");
1557 DummyPrerenderContents* prerender_contents = 1566 DummyPrerenderContents* prerender_contents =
1558 prerender_manager()->CreateNextPrerenderContents(url, ORIGIN_INSTANT, 1567 prerender_manager()->CreateNextPrerenderContents(url, ORIGIN_INSTANT,
1559 FINAL_STATUS_USED); 1568 FINAL_STATUS_USED);
1560 scoped_ptr<PrerenderHandle> prerender_handle( 1569 scoped_ptr<PrerenderHandle> prerender_handle(
1561 prerender_manager()->AddPrerenderForInstant(url, NULL, kSize)); 1570 prerender_manager()->AddPrerenderForInstant(url, NULL, kSize));
1562 CHECK(prerender_handle.get()); 1571 CHECK(prerender_handle.get());
1563 EXPECT_TRUE(prerender_handle->IsPrerendering()); 1572 EXPECT_TRUE(prerender_handle->IsPrerendering());
1564 EXPECT_TRUE(prerender_contents->prerendering_has_started()); 1573 EXPECT_TRUE(prerender_contents->prerendering_has_started());
1565 EXPECT_EQ(prerender_contents, prerender_handle->contents()); 1574 EXPECT_EQ(prerender_contents, prerender_handle->contents());
1566 EXPECT_EQ(ORIGIN_INSTANT, prerender_handle->contents()->origin()); 1575 EXPECT_EQ(ORIGIN_INSTANT, prerender_handle->contents()->origin());
1567 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url)); 1576 ASSERT_EQ(prerender_contents, prerender_manager()->FindAndUseEntry(url));
1568 EXPECT_FALSE(prerender_handle->IsPrerendering()); 1577 EXPECT_FALSE(prerender_handle->IsPrerendering());
1569 } 1578 }
1570 1579
1571 } // namespace prerender 1580 } // namespace prerender
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698