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 6d09bf89c38f3db31adc90576fe14af1150ab690..7194a05894c47066873cf56a05f30f0ccccf52b3 100644 |
| --- a/components/search_engines/template_url_unittest.cc |
| +++ b/components/search_engines/template_url_unittest.cc |
| @@ -1142,6 +1142,56 @@ TEST_F(TemplateURLTest, ExtractSearchTermsFromURLPath) { |
| EXPECT_EQ(base::string16(), result); |
| } |
| +TEST_F(TemplateURLTest, ExtractSearchTermsFromURL_CyrillicInWindows1251) { |
|
Peter Kasting
2015/04/13 18:59:48
Nit: I would name this "ExtraceSearchTermsFromNonU
Vitaly Baranov
2015/04/14 13:26:15
Done.
|
| + TemplateURLData data; |
| + data.SetURL("http://windows-1251.ru/?q={searchTerms}"); |
| + data.alternate_urls.push_back("http://windows-1251.ru/#q={searchTerms}"); |
| + data.alternate_urls.push_back("http://windows-1251.ru/path/{searchTerms}"); |
| + data.input_encodings.push_back("windows-1251"); |
| + TemplateURL url(data); |
| + base::string16 result; |
| + |
| + EXPECT_TRUE(url.ExtractSearchTermsFromURL( |
| + GURL("http://windows-1251.ru/?q=" |
| + "%C7%E4%F0%E0%E2%F1%F2%E2%F3%E9%2C+%EC%E8%F0!"), |
| + search_terms_data_, &result)); |
| + EXPECT_EQ(base::UTF8ToUTF16("Здравствуй, мир!"), result); |
|
Peter Kasting
2015/04/13 18:59:48
Don't put extended characters directly into source
Vitaly Baranov
2015/04/14 13:26:15
Done.
|
| + |
| + EXPECT_TRUE(url.ExtractSearchTermsFromURL( |
| + GURL("http://windows-1251.ru/#q=%E4%E2%E0+%F1%EB%EE%E2%E0"), |
| + search_terms_data_, &result)); |
| + EXPECT_EQ(base::UTF8ToUTF16("два слова"), result); |
| + |
| + EXPECT_TRUE(url.ExtractSearchTermsFromURL( |
| + GURL("http://windows-1251.ru/path/%E1%F3%EA%E2%FB%20%C0%20%E8%20A"), |
| + search_terms_data_, &result)); |
| + EXPECT_EQ(base::UTF8ToUTF16("буквы А и A"), result); |
| +} |
| + |
| +TEST_F(TemplateURLTest, ExtractSearchTermsFromURL_CyrillicInUTF8) { |
| + TemplateURLData data; |
| + data.SetURL("http://utf-8.ru/?q={searchTerms}"); |
| + data.alternate_urls.push_back("http://utf-8.ru/#q={searchTerms}"); |
| + data.alternate_urls.push_back("http://utf-8.ru/path/{searchTerms}"); |
| + TemplateURL url(data); |
| + base::string16 result; |
| + |
| + EXPECT_TRUE(url.ExtractSearchTermsFromURL( |
| + GURL("http://utf-8.ru/?q=Здравствуй%2C+мир!"), |
| + search_terms_data_, &result)); |
| + EXPECT_EQ(base::UTF8ToUTF16("Здравствуй, мир!"), result); |
| + |
| + EXPECT_TRUE(url.ExtractSearchTermsFromURL( |
| + GURL("http://utf-8.ru/#q=два+слова"), |
| + search_terms_data_, &result)); |
| + EXPECT_EQ(base::UTF8ToUTF16("два слова"), result); |
| + |
| + EXPECT_TRUE(url.ExtractSearchTermsFromURL( |
| + GURL("http://utf-8.ru/path/буквы%20А%20и%20A"), |
| + search_terms_data_, &result)); |
| + EXPECT_EQ(base::UTF8ToUTF16("буквы А и A"), result); |
| +} |
| + |
| TEST_F(TemplateURLTest, HasSearchTermsReplacementKey) { |
| TemplateURLData data; |
| data.SetURL("http://google.com/?q={searchTerms}"); |