OLD | NEW |
---|---|
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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/metrics/field_trial.h" | 6 #include "base/metrics/field_trial.h" |
7 #include "base/metrics/histogram_base.h" | 7 #include "base/metrics/histogram_base.h" |
8 #include "base/metrics/histogram_samples.h" | 8 #include "base/metrics/histogram_samples.h" |
9 #include "base/metrics/statistics_recorder.h" | 9 #include "base/metrics/statistics_recorder.h" |
10 #include "base/prefs/pref_service.h" | 10 #include "base/prefs/pref_service.h" |
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
211 template_url_service->SetDefaultSearchProvider(template_url); | 211 template_url_service->SetDefaultSearchProvider(template_url); |
212 } | 212 } |
213 | 213 |
214 bool InInstantProcess(const content::WebContents* contents) { | 214 bool InInstantProcess(const content::WebContents* contents) { |
215 InstantService* instant_service = | 215 InstantService* instant_service = |
216 InstantServiceFactory::GetForProfile(profile()); | 216 InstantServiceFactory::GetForProfile(profile()); |
217 return instant_service->IsInstantProcess( | 217 return instant_service->IsInstantProcess( |
218 contents->GetRenderProcessHost()->GetID()); | 218 contents->GetRenderProcessHost()->GetID()); |
219 } | 219 } |
220 | 220 |
221 content::BrowserContext* AsBrowserContext(Profile* profile) { | |
222 // Following implementation of FromBrowserContext: | |
223 return static_cast<Profile*>(profile); | |
224 } | |
225 | |
221 scoped_ptr<base::FieldTrialList> field_trial_list_; | 226 scoped_ptr<base::FieldTrialList> field_trial_list_; |
222 }; | 227 }; |
223 | 228 |
224 struct SearchTestCase { | 229 struct SearchTestCase { |
225 const char* url; | 230 const char* url; |
226 bool expected_result; | 231 bool expected_result; |
227 const char* comment; | 232 const char* comment; |
228 }; | 233 }; |
229 | 234 |
230 TEST_F(SearchTest, ShouldAssignURLToInstantRendererExtendedEnabled) { | 235 TEST_F(SearchTest, ShouldAssignURLToInstantRendererExtendedEnabled) { |
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
514 content::NavigationController& controller = contents->GetController(); | 519 content::NavigationController& controller = contents->GetController(); |
515 // Test virtual url chrome://newtab for first NTP of a new profile | 520 // Test virtual url chrome://newtab for first NTP of a new profile |
516 EXPECT_TRUE(NavEntryIsInstantNTP(contents, | 521 EXPECT_TRUE(NavEntryIsInstantNTP(contents, |
517 controller.GetLastCommittedEntry())); | 522 controller.GetLastCommittedEntry())); |
518 // The new_tab_url gets set after the first NTP is visible. | 523 // The new_tab_url gets set after the first NTP is visible. |
519 SetSearchProvider(true, false); | 524 SetSearchProvider(true, false); |
520 EXPECT_TRUE(NavEntryIsInstantNTP(contents, | 525 EXPECT_TRUE(NavEntryIsInstantNTP(contents, |
521 controller.GetLastCommittedEntry())); | 526 controller.GetLastCommittedEntry())); |
522 } | 527 } |
523 | 528 |
524 TEST_F(SearchTest, UseLocalNTPInIncognito) { | 529 TEST_F(SearchTest, NoRewriteInIncognito) { |
525 EXPECT_EQ(GURL(), chrome::GetNewTabPageURL( | 530 profile()->ForceIncognito(true); |
526 profile()->GetOffTheRecordProfile())); | 531 EXPECT_EQ(GURL(), chrome::GetNewTabPageURL(profile())); |
532 GURL new_tab_url(chrome::kChromeUINewTabURL); | |
533 EXPECT_FALSE(HandleNewTabURLRewrite(&new_tab_url, AsBrowserContext( | |
Jered
2014/02/03 15:58:11
nit: Just profile() should work.
samarth
2014/02/03 18:33:31
Done.
| |
534 profile()))); | |
535 EXPECT_EQ(GURL(chrome::kChromeUINewTabURL), new_tab_url); | |
527 } | 536 } |
528 | 537 |
529 TEST_F(SearchTest, UseLocalNTPIfNTPURLIsInsecure) { | 538 TEST_F(SearchTest, UseLocalNTPIfNTPURLIsInsecure) { |
530 // Set an insecure new tab page URL and verify that it's ignored. | 539 // Set an insecure new tab page URL and verify that it's ignored. |
531 SetSearchProvider(true, true); | 540 SetSearchProvider(true, true); |
532 EXPECT_EQ(GURL(chrome::kChromeSearchLocalNtpUrl), | 541 EXPECT_EQ(GURL(chrome::kChromeSearchLocalNtpUrl), |
533 chrome::GetNewTabPageURL(profile())); | 542 chrome::GetNewTabPageURL(profile())); |
543 GURL new_tab_url(chrome::kChromeUINewTabURL); | |
544 EXPECT_TRUE( | |
545 HandleNewTabURLRewrite(&new_tab_url, AsBrowserContext(profile()))); | |
546 EXPECT_EQ(GURL(chrome::kChromeSearchLocalNtpUrl), new_tab_url); | |
534 } | 547 } |
535 | 548 |
536 TEST_F(SearchTest, UseLocalNTPIfNTPURLIsNotSet) { | 549 TEST_F(SearchTest, UseLocalNTPIfNTPURLIsNotSet) { |
537 // Set an insecure new tab page URL and verify that it's ignored. | 550 // Set an insecure new tab page URL and verify that it's ignored. |
538 SetSearchProvider(false, true); | 551 SetSearchProvider(false, true); |
539 EXPECT_EQ(GURL(chrome::kChromeSearchLocalNtpUrl), | 552 EXPECT_EQ(GURL(chrome::kChromeSearchLocalNtpUrl), |
540 chrome::GetNewTabPageURL(profile())); | 553 chrome::GetNewTabPageURL(profile())); |
554 GURL new_tab_url(chrome::kChromeUINewTabURL); | |
555 EXPECT_TRUE( | |
556 HandleNewTabURLRewrite(&new_tab_url, AsBrowserContext(profile()))); | |
557 EXPECT_EQ(GURL(chrome::kChromeSearchLocalNtpUrl), new_tab_url); | |
541 } | 558 } |
542 | 559 |
543 TEST_F(SearchTest, UseLocalNTPIfNTPURLIsBlockedForSupervisedUser) { | 560 TEST_F(SearchTest, UseLocalNTPIfNTPURLIsBlockedForSupervisedUser) { |
544 // Block access to foo.com in the URL filter. | 561 // Block access to foo.com in the URL filter. |
545 ManagedUserService* managed_user_service = | 562 ManagedUserService* managed_user_service = |
546 ManagedUserServiceFactory::GetForProfile(profile()); | 563 ManagedUserServiceFactory::GetForProfile(profile()); |
547 ManagedModeURLFilter* url_filter = | 564 ManagedModeURLFilter* url_filter = |
548 managed_user_service->GetURLFilterForUIThread(); | 565 managed_user_service->GetURLFilterForUIThread(); |
549 std::map<std::string, bool> hosts; | 566 std::map<std::string, bool> hosts; |
550 hosts["foo.com"] = false; | 567 hosts["foo.com"] = false; |
551 url_filter->SetManualHosts(&hosts); | 568 url_filter->SetManualHosts(&hosts); |
552 | 569 |
553 EXPECT_EQ(GURL(chrome::kChromeSearchLocalNtpUrl), | 570 EXPECT_EQ(GURL(chrome::kChromeSearchLocalNtpUrl), |
554 chrome::GetNewTabPageURL(profile())); | 571 chrome::GetNewTabPageURL(profile())); |
572 GURL new_tab_url(chrome::kChromeUINewTabURL); | |
573 EXPECT_TRUE( | |
574 HandleNewTabURLRewrite(&new_tab_url, AsBrowserContext(profile()))); | |
575 EXPECT_EQ(GURL(chrome::kChromeSearchLocalNtpUrl), new_tab_url); | |
555 EXPECT_EQ(GURL(), GetInstantURL(profile(), kDisableStartMargin, false)); | 576 EXPECT_EQ(GURL(), GetInstantURL(profile(), kDisableStartMargin, false)); |
556 } | 577 } |
557 | 578 |
558 TEST_F(SearchTest, GetInstantURL) { | 579 TEST_F(SearchTest, GetInstantURL) { |
559 // No Instant URL because "strk" is missing. | 580 // No Instant URL because "strk" is missing. |
560 SetDefaultInstantTemplateUrl(false); | 581 SetDefaultInstantTemplateUrl(false); |
561 EXPECT_EQ(GURL(), GetInstantURL(profile(), kDisableStartMargin, false)); | 582 EXPECT_EQ(GURL(), GetInstantURL(profile(), kDisableStartMargin, false)); |
562 | 583 |
563 // Set an Instant URL with a valid search terms replacement key. | 584 // Set an Instant URL with a valid search terms replacement key. |
564 SetDefaultInstantTemplateUrl(true); | 585 SetDefaultInstantTemplateUrl(true); |
(...skipping 403 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
968 } | 989 } |
969 | 990 |
970 TEST_F(OriginChipTest, CommandLineOriginChipLeadingMenuButton) { | 991 TEST_F(OriginChipTest, CommandLineOriginChipLeadingMenuButton) { |
971 CommandLine::ForCurrentProcess()->AppendSwitch( | 992 CommandLine::ForCurrentProcess()->AppendSwitch( |
972 switches::kEnableOriginChipLeadingMenuButton); | 993 switches::kEnableOriginChipLeadingMenuButton); |
973 EXPECT_TRUE(ShouldDisplayOriginChip()); | 994 EXPECT_TRUE(ShouldDisplayOriginChip()); |
974 EXPECT_EQ(ORIGIN_CHIP_LEADING_MENU_BUTTON, GetOriginChipPosition()); | 995 EXPECT_EQ(ORIGIN_CHIP_LEADING_MENU_BUTTON, GetOriginChipPosition()); |
975 } | 996 } |
976 | 997 |
977 } // namespace chrome | 998 } // namespace chrome |
OLD | NEW |