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

Side by Side Diff: chrome/browser/search/search_unittest.cc

Issue 1911573002: Teach SiteInstance::GetSiteForURL() about blob and filesystem URLs. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add search unittest. Created 4 years, 7 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/search/search.cc ('k') | content/browser/site_instance_impl.cc » ('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) 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 <stddef.h> 5 #include <stddef.h>
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #include "base/metrics/field_trial.h" 9 #include "base/metrics/field_trial.h"
10 #include "base/metrics/histogram_base.h" 10 #include "base/metrics/histogram_base.h"
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 {"chrome-search://local-ntp", true, "Local NTP"}, 178 {"chrome-search://local-ntp", true, "Local NTP"},
179 {"chrome-search://remote-ntp", true, "Remote NTP"}, 179 {"chrome-search://remote-ntp", true, "Remote NTP"},
180 {"invalid-scheme://local-ntp", false, "Invalid Local NTP URL"}, 180 {"invalid-scheme://local-ntp", false, "Invalid Local NTP URL"},
181 {"invalid-scheme://online-ntp", false, "Invalid Online NTP URL"}, 181 {"invalid-scheme://online-ntp", false, "Invalid Online NTP URL"},
182 {"chrome-search://foo.com", false, "Search result page"}, 182 {"chrome-search://foo.com", false, "Search result page"},
183 {"https://foo.com/instant?strk", false, ""}, 183 {"https://foo.com/instant?strk", false, ""},
184 {"https://foo.com/instant#strk", false, ""}, 184 {"https://foo.com/instant#strk", false, ""},
185 {"https://foo.com/instant?strk=0", false, ""}, 185 {"https://foo.com/instant?strk=0", false, ""},
186 {"https://foo.com/url?strk", false, ""}, 186 {"https://foo.com/url?strk", false, ""},
187 {"https://foo.com/alt?strk", false, ""}, 187 {"https://foo.com/alt?strk", false, ""},
188 {"https://foo.com:80/instant", false, "HTTPS with port"},
188 {"http://foo.com/instant", false, "Non-HTTPS"}, 189 {"http://foo.com/instant", false, "Non-HTTPS"},
189 {"http://foo.com/instant?strk", false, "Non-HTTPS"}, 190 {"http://foo.com/instant?strk", false, "Non-HTTPS"},
190 {"http://foo.com/instant?strk=1", false, "Non-HTTPS"}, 191 {"http://foo.com/instant?strk=1", false, "Non-HTTPS"},
192 {"http://foo.com:443/instant", false, "Non-HTTPS"},
191 {"https://foo.com/instant", false, "No search terms replacement"}, 193 {"https://foo.com/instant", false, "No search terms replacement"},
192 {"https://foo.com/?strk", false, "Non-exact path"}, 194 {"https://foo.com/?strk", false, "Non-exact path"},
193 }; 195 };
194 196
195 for (size_t i = 0; i < arraysize(kTestCases); ++i) { 197 for (size_t i = 0; i < arraysize(kTestCases); ++i) {
196 const SearchTestCase& test = kTestCases[i]; 198 const SearchTestCase& test = kTestCases[i];
197 EXPECT_EQ(test.expected_result, 199 EXPECT_EQ(test.expected_result,
198 ShouldUseProcessPerSiteForInstantURL(GURL(test.url), profile())) 200 ShouldUseProcessPerSiteForInstantURL(GURL(test.url), profile()))
199 << test.url << " " << test.comment; 201 << test.url << " " << test.comment;
200 } 202 }
(...skipping 386 matching lines...) Expand 10 before | Expand all | Expand 10 after
587 TEST_F(SearchTest, 589 TEST_F(SearchTest,
588 ShouldPrerenderInstantUrlOnOmniboxFocus_EnabledViaFieldTrial) { 590 ShouldPrerenderInstantUrlOnOmniboxFocus_EnabledViaFieldTrial) {
589 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( 591 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial(
590 "EmbeddedSearch", 592 "EmbeddedSearch",
591 "Group1 espv:80 prerender_instant_url_on_omnibox_focus:1")); 593 "Group1 espv:80 prerender_instant_url_on_omnibox_focus:1"));
592 EXPECT_TRUE(ShouldPrerenderInstantUrlOnOmniboxFocus()); 594 EXPECT_TRUE(ShouldPrerenderInstantUrlOnOmniboxFocus());
593 EXPECT_EQ(80ul, EmbeddedSearchPageVersion()); 595 EXPECT_EQ(80ul, EmbeddedSearchPageVersion());
594 } 596 }
595 597
596 598
597
598 TEST_F(SearchTest, ShouldShowGoogleLocalNTP_Default) { 599 TEST_F(SearchTest, ShouldShowGoogleLocalNTP_Default) {
599 EXPECT_TRUE(ShouldShowGoogleLocalNTP()); 600 EXPECT_TRUE(ShouldShowGoogleLocalNTP());
600 } 601 }
601 602
602 TEST_F(SearchTest, ShouldShowGoogleLocalNTP_EnabledViaFinch) { 603 TEST_F(SearchTest, ShouldShowGoogleLocalNTP_EnabledViaFinch) {
603 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( 604 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial(
604 "EmbeddedSearch", "Group1 espv:2 google_local_ntp:1")); 605 "EmbeddedSearch", "Group1 espv:2 google_local_ntp:1"));
605 EXPECT_TRUE(ShouldShowGoogleLocalNTP()); 606 EXPECT_TRUE(ShouldShowGoogleLocalNTP());
606 } 607 }
607 608
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
693 }; 694 };
694 695
695 for (size_t i = 0; i < arraysize(kTestCases); ++i) { 696 for (size_t i = 0; i < arraysize(kTestCases); ++i) {
696 const QueryExtractionAllowedTestCase& test = kTestCases[i]; 697 const QueryExtractionAllowedTestCase& test = kTestCases[i];
697 EXPECT_EQ(test.expected_result, 698 EXPECT_EQ(test.expected_result,
698 IsQueryExtractionAllowedForURL(profile(), GURL(test.url))) 699 IsQueryExtractionAllowedForURL(profile(), GURL(test.url)))
699 << test.url << " " << test.comment; 700 << test.url << " " << test.comment;
700 } 701 }
701 } 702 }
702 703
704 // Regression test for https://crbug.com/605720: Set up a search provider backed
705 // by localhost on a specific port, like browsertests do. The chrome-search://
706 // URLs generated in this mode should not have ports.
707 TEST_F(SearchTest, SearchProviderWithPort) {
708 TemplateURLService* template_url_service =
709 TemplateURLServiceFactory::GetForProfile(profile());
710 TemplateURLData data;
711 data.SetShortName(base::ASCIIToUTF16("localhost"));
712 data.SetURL("https://[::1]:1993/url?bar={searchTerms}");
713 data.instant_url =
714 "https://[::1]:1993/instant?"
715 "{google:forceInstantResults}foo=foo#foo=foo&strk";
716 data.new_tab_url = "https://[::1]:1993/newtab?strk";
717 data.alternate_urls.push_back("https://[::1]:1993/alt#quux={searchTerms}");
718 data.search_terms_replacement_key = "strk";
719
720 TemplateURL* template_url = new TemplateURL(data);
721 template_url_service->Add(template_url); // Takes ownership of |template_url|.
722 template_url_service->SetUserSelectedDefaultSearchProvider(template_url);
723
724 EXPECT_TRUE(ShouldAssignURLToInstantRenderer(
725 GURL("https://[::1]:1993/newtab?lala"), profile()));
726 EXPECT_FALSE(ShouldAssignURLToInstantRenderer(
727 GURL("https://[::1]:1992/newtab?lala"), profile()));
728 EXPECT_EQ(GURL("chrome-search://remote-ntp/newtab?lala"),
729 GetEffectiveURLForInstant(GURL("https://[::1]:1993/newtab?lala"),
730 profile()));
731 EXPECT_EQ(GURL("chrome-search://[::1]/instant?strk"),
732 GetEffectiveURLForInstant(GURL("https://[::1]:1993/instant?strk"),
733 profile()));
734 EXPECT_FALSE(ShouldAssignURLToInstantRenderer(
735 GURL("https://[::1]:1993/unregistered-path?strk"), profile()));
736 }
737
703 class SearchURLTest : public SearchTest { 738 class SearchURLTest : public SearchTest {
704 protected: 739 protected:
705 void SetSearchProvider(bool set_ntp_url, bool insecure_ntp_url) override { 740 void SetSearchProvider(bool set_ntp_url, bool insecure_ntp_url) override {
706 TemplateURLService* template_url_service = 741 TemplateURLService* template_url_service =
707 TemplateURLServiceFactory::GetForProfile(profile()); 742 TemplateURLServiceFactory::GetForProfile(profile());
708 TemplateURLData data; 743 TemplateURLData data;
709 data.SetShortName(base::ASCIIToUTF16("Google")); 744 data.SetShortName(base::ASCIIToUTF16("Google"));
710 data.SetURL("{google:baseURL}search?" 745 data.SetURL("{google:baseURL}search?"
711 "{google:instantExtendedEnabledParameter}q={searchTerms}"); 746 "{google:instantExtendedEnabledParameter}q={searchTerms}");
712 data.search_terms_replacement_key = "espv"; 747 data.search_terms_replacement_key = "espv";
(...skipping 25 matching lines...) Expand all
738 TemplateURLRef::SearchTermsArgs search_terms_args(base::ASCIIToUTF16("foo")); 773 TemplateURLRef::SearchTermsArgs search_terms_args(base::ASCIIToUTF16("foo"));
739 GURL result(template_url_->url_ref().ReplaceSearchTerms( 774 GURL result(template_url_->url_ref().ReplaceSearchTerms(
740 search_terms_args, UIThreadSearchTermsData(profile()))); 775 search_terms_args, UIThreadSearchTermsData(profile())));
741 ASSERT_TRUE(result.is_valid()); 776 ASSERT_TRUE(result.is_valid());
742 // Query extraction is disabled. Make sure 777 // Query extraction is disabled. Make sure
743 // {google:instantExtendedEnabledParameter} is not set in the search URL. 778 // {google:instantExtendedEnabledParameter} is not set in the search URL.
744 EXPECT_EQ("http://www.google.com/search?q=foo", result.spec()); 779 EXPECT_EQ("http://www.google.com/search?q=foo", result.spec());
745 } 780 }
746 781
747 } // namespace search 782 } // namespace search
OLDNEW
« no previous file with comments | « chrome/browser/search/search.cc ('k') | content/browser/site_instance_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698