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

Side by Side Diff: chrome/browser/search_engines/template_url_unittest.cc

Issue 10908226: Introduces a search term extraction mechanism working for arbitrary search providers. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Removed version_46.sql, committed separately. Created 8 years, 2 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 | Annotate | Revision Log
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 "base/base_paths.h" 5 #include "base/base_paths.h"
6 #include "base/string_util.h" 6 #include "base/string_util.h"
7 #include "base/utf_string_conversions.h" 7 #include "base/utf_string_conversions.h"
8 #include "chrome/browser/browser_process.h" 8 #include "chrome/browser/browser_process.h"
9 #include "chrome/browser/rlz/rlz.h" 9 #include "chrome/browser/rlz/rlz.h"
10 #include "chrome/browser/search_engines/search_terms_data.h" 10 #include "chrome/browser/search_engines/search_terms_data.h"
(...skipping 623 matching lines...) Expand 10 before | Expand all | Expand 10 after
634 TemplateURL url(NULL, data); 634 TemplateURL url(NULL, data);
635 TemplateURLRef::Replacements replacements; 635 TemplateURLRef::Replacements replacements;
636 bool valid = false; 636 bool valid = false;
637 EXPECT_EQ("{", 637 EXPECT_EQ("{",
638 url.url_ref().ParseURL("{{searchTerms}", &replacements, &valid)); 638 url.url_ref().ParseURL("{{searchTerms}", &replacements, &valid));
639 ASSERT_EQ(1U, replacements.size()); 639 ASSERT_EQ(1U, replacements.size());
640 EXPECT_EQ(1U, replacements[0].index); 640 EXPECT_EQ(1U, replacements[0].index);
641 EXPECT_EQ(TemplateURLRef::SEARCH_TERMS, replacements[0].type); 641 EXPECT_EQ(TemplateURLRef::SEARCH_TERMS, replacements[0].type);
642 EXPECT_TRUE(valid); 642 EXPECT_TRUE(valid);
643 } 643 }
644
645 TEST_F(TemplateURLTest, GetURLNoInstantURL) {
646 TemplateURLData data;
647 data.SetURL("http://google.com/?q={searchTerms}");
648 data.suggestions_url = "http://google.com/suggest?q={searchTerms}";
649 data.alternate_urls.push_back("http://google.com/alt?q={searchTerms}");
650 data.alternate_urls.push_back("{google:baseURL}/alt/#q={searchTerms}");
651 TemplateURL url(NULL, data);
652 ASSERT_EQ(3U, url.URLCount());
653 EXPECT_EQ("http://google.com/alt?q={searchTerms}", url.GetURL(0));
654 EXPECT_EQ("{google:baseURL}/alt/#q={searchTerms}", url.GetURL(1));
655 EXPECT_EQ("http://google.com/?q={searchTerms}", url.GetURL(2));
656 }
657
658 TEST_F(TemplateURLTest, GetURLNoSuggestionsURL) {
659 TemplateURLData data;
660 data.SetURL("http://google.com/?q={searchTerms}");
661 data.instant_url = "http://google.com/instant#q={searchTerms}";
662 data.alternate_urls.push_back("http://google.com/alt?q={searchTerms}");
663 data.alternate_urls.push_back("{google:baseURL}/alt/#q={searchTerms}");
664 TemplateURL url(NULL, data);
665 ASSERT_EQ(3U, url.URLCount());
666 EXPECT_EQ("http://google.com/alt?q={searchTerms}", url.GetURL(0));
667 EXPECT_EQ("{google:baseURL}/alt/#q={searchTerms}", url.GetURL(1));
668 EXPECT_EQ("http://google.com/?q={searchTerms}", url.GetURL(2));
669 }
670
671 TEST_F(TemplateURLTest, GetURLOnlyOneURL) {
672 TemplateURLData data;
673 data.SetURL("http://www.google.co.uk/");
674 TemplateURL url(NULL, data);
675 ASSERT_EQ(1U, url.URLCount());
676 EXPECT_EQ("http://www.google.co.uk/", url.GetURL(0));
677 }
678
679 TEST_F(TemplateURLTest, ExtractSearchTermsFromURL) {
680 TemplateURLData data;
681 data.SetURL("http://google.com/?q={searchTerms}");
682 data.instant_url = "http://google.com/instant#q={searchTerms}";
683 data.alternate_urls.push_back("http://google.com/alt/#q={searchTerms}");
684 data.alternate_urls.push_back(
685 "http://google.com/alt/?ext=foo&q={searchTerms}#ref=bar");
686 TemplateURL url(NULL, data);
687 string16 result;
688
689 EXPECT_TRUE(url.ExtractSearchTermsFromURL(
690 GURL("http://google.com/?q=something"), &result));
691 EXPECT_EQ(ASCIIToUTF16("something"), result);
692
693 EXPECT_FALSE(url.ExtractSearchTermsFromURL(
694 GURL("http://google.ca/?q=something"), &result));
695 EXPECT_EQ(string16(), result);
696
697 EXPECT_FALSE(url.ExtractSearchTermsFromURL(
698 GURL("http://google.com/foo/?q=foo"), &result));
699 EXPECT_EQ(string16(), result);
700
701 EXPECT_FALSE(url.ExtractSearchTermsFromURL(
702 GURL("https://google.com/?q=foo"), &result));
703 EXPECT_EQ(string16(), result);
704
705 EXPECT_FALSE(url.ExtractSearchTermsFromURL(
706 GURL("http://google.com:8080/?q=foo"), &result));
707 EXPECT_EQ(string16(), result);
708
709 EXPECT_TRUE(url.ExtractSearchTermsFromURL(
710 GURL("http://google.com/?q=1+2+3&b=456"), &result));
711 EXPECT_EQ(ASCIIToUTF16("1 2 3"), result);
712
713 EXPECT_TRUE(url.ExtractSearchTermsFromURL(
714 GURL("http://google.com/alt/?q=123#q=456"), &result));
715 EXPECT_EQ(ASCIIToUTF16("456"), result);
716
717 EXPECT_TRUE(url.ExtractSearchTermsFromURL(
718 GURL("http://google.com/alt/?a=012&q=123&b=456#f=789"), &result));
719 EXPECT_EQ(ASCIIToUTF16("123"), result);
720
721 EXPECT_TRUE(url.ExtractSearchTermsFromURL(GURL(
722 "http://google.com/alt/?a=012&q=123&b=456#j=abc&q=789&h=def9"), &result));
723 EXPECT_EQ(ASCIIToUTF16("789"), result);
724
725 EXPECT_FALSE(url.ExtractSearchTermsFromURL(
726 GURL("http://google.com/alt/?q="), &result));
727 EXPECT_EQ(string16(), result);
728
729 EXPECT_FALSE(url.ExtractSearchTermsFromURL(
730 GURL("http://google.com/alt/?#q="), &result));
731 EXPECT_EQ(string16(), result);
732
733 EXPECT_FALSE(url.ExtractSearchTermsFromURL(
734 GURL("http://google.com/alt/?q=#q="), &result));
735 EXPECT_EQ(string16(), result);
736
737 EXPECT_FALSE(url.ExtractSearchTermsFromURL(
738 GURL("http://google.com/alt/?q=123#q="), &result));
739 EXPECT_EQ(string16(), result);
740
741 EXPECT_TRUE(url.ExtractSearchTermsFromURL(
742 GURL("http://google.com/alt/?q=#q=123"), &result));
743 EXPECT_EQ(ASCIIToUTF16("123"), result);
744 }
OLDNEW
« no previous file with comments | « chrome/browser/search_engines/template_url_service_factory.cc ('k') | chrome/browser/ui/toolbar/toolbar_model.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698