Chromium Code Reviews| Index: components/search_engines/template_url_unittest.cc |
| diff --git a/components/search_engines/template_url_unittest.cc b/components/search_engines/template_url_unittest.cc |
| index 828559760d7873da2c45ea457738d403ce346ffb..c035a606877124e02f0b1162ff5c57bd79d46917 100644 |
| --- a/components/search_engines/template_url_unittest.cc |
| +++ b/components/search_engines/template_url_unittest.cc |
| @@ -1192,6 +1192,32 @@ TEST_F(TemplateURLTest, ExtractSearchTermsFromNonUTF8URL) { |
| result); |
| } |
| +// Checks that the ExtractSearchTermsFromURL function strips constant |
| +// prefix/suffix strings from the search terms param. |
| +TEST_F(TemplateURLTest, ExtractSearchTermsWithPrefixAndSuffix) { |
| + TemplateURLData data; |
| + data.alternate_urls.push_back("http://www.example.com/?q=chromium-{searchTerms}@chromium.org"); |
| + data.alternate_urls.push_back("http://www.example.com/chromium-{searchTerms}@chromium.org/info"); |
| + TemplateURL url(data); |
| + base::string16 result; |
| + |
| + EXPECT_TRUE(url.ExtractSearchTermsFromURL( |
| + GURL("http://www.example.com/?q=chromium-dev@chromium.org"), |
| + search_terms_data_, &result)); |
| + EXPECT_EQ(ASCIIToUTF16("dev"), result); |
| + |
| + EXPECT_TRUE(url.ExtractSearchTermsFromURL( |
| + GURL("http://www.example.com/chromium-dev@chromium.org/info"), |
| + search_terms_data_, &result)); |
| + EXPECT_EQ(ASCIIToUTF16("dev"), result); |
| + |
| + // To be safe, still succeed if they're missing. This is no worse than the |
| + // previous behavior. |
| + EXPECT_TRUE(url.ExtractSearchTermsFromURL( |
| + GURL("http://www.example.com/?q=invalid"), search_terms_data_, &result)); |
| + EXPECT_EQ(ASCIIToUTF16("invalid"), result); |
|
Peter Kasting
2016/04/21 19:48:57
Hmm. I don't think we should allow "foo.com/?q=xy
jbroman
2016/04/21 21:01:42
My reasoning was that they were accepted before th
|
| +} |
| + |
| TEST_F(TemplateURLTest, HasSearchTermsReplacementKey) { |
| TemplateURLData data; |
| data.SetURL("http://google.com/?q={searchTerms}"); |