Chromium Code Reviews| Index: chrome/browser/search/search_unittest.cc |
| diff --git a/chrome/browser/search/search_unittest.cc b/chrome/browser/search/search_unittest.cc |
| index d20dadd3dd3760e2637fb647fa7d586231a778d1..c35bdda06bc7c4a67afb8a4ac5f0f670a6c2cfe3 100644 |
| --- a/chrome/browser/search/search_unittest.cc |
| +++ b/chrome/browser/search/search_unittest.cc |
| @@ -776,6 +776,56 @@ TEST_F(SearchTest, GetSearchResultPrefetchBaseURL) { |
| GetSearchResultPrefetchBaseURL(profile())); |
| } |
| +struct SearchURLTestCase { |
| + const char* url; |
| + const char* expected_result; |
| + const char* comment; |
| +}; |
| + |
| +TEST_F(SearchTest, ExtractSearchTermsFromURL) { |
| + const SearchURLTestCase kTestCases[] = { |
| + {chrome::kChromeSearchLocalNtpUrl, "", "NTP url"}, |
| + {"https://foo.com/instant?strk", "", "Invalid search url"}, |
| + {"https://foo.com/instant#strk", "", "Invalid search url"}, |
| + {"https://foo.com/alt#quux=foo", "foo", "Valid search url"}, |
| + {"https://foo.com/alt#quux=foo&strk", "foo", "Valid search url"} |
| + }; |
| + |
| + for (size_t i = 0; i < arraysize(kTestCases); ++i) { |
| + const SearchURLTestCase& test = kTestCases[i]; |
| + EXPECT_EQ( |
| + test.expected_result, |
| + UTF16ToASCII(chrome::ExtractSearchTermsFromURL(profile(), |
| + GURL(test.url)))) |
| + << test.url << " " << test.comment; |
| + } |
| +} |
| + |
| +struct InstantURLTestCase { |
| + const char* url; |
| + bool expected_result; |
| + const char* comment; |
| +}; |
| + |
| +TEST_F(SearchTest, IsSuitableForInstant) { |
|
Jered
2014/02/11 23:33:28
Update this test case?
kmadhusu
2014/02/12 00:24:57
Oops. Fixed.
|
| + const InstantURLTestCase kTestCases[] = { |
| + {"http://foo.com/instant?strk", false, "HTTP URL"}, |
| + {"https://foo.com/instant?strk", true, "Valid URL"}, |
| + {"https://foo.com/instant?", false, |
| + "No search terms replacement key"}, |
| + {"https://foo.com/alt#quux=foo", false, |
| + "No search terms replacement key"}, |
| + {"https://foo.com/alt#quux=foo&strk", true, "Valid search url"} |
| + }; |
| + |
| + for (size_t i = 0; i < arraysize(kTestCases); ++i) { |
| + const InstantURLTestCase& test = kTestCases[i]; |
| + EXPECT_EQ(test.expected_result, |
| + chrome::IsSuitableURLForInstant(profile(), GURL(test.url))) |
| + << test.url << " " << test.comment; |
| + } |
| +} |
| + |
| typedef SearchTest IsQueryExtractionEnabledTest; |
| TEST_F(IsQueryExtractionEnabledTest, NotSet) { |