| 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 f591afc2b11b0752a45f9dca0e7f257c2dd310d4..7056535667c249f52d6d6abfa9ffee9916bbc7ff 100644
|
| --- a/components/search_engines/template_url_unittest.cc
|
| +++ b/components/search_engines/template_url_unittest.cc
|
| @@ -30,6 +30,7 @@ class TestSearchTermsData : public SearchTermsData {
|
| virtual std::string GoogleImageSearchSource() const OVERRIDE;
|
| virtual bool EnableAnswersInSuggest() const OVERRIDE;
|
| virtual bool IsShowingSearchTermsOnSearchResultsPages() const OVERRIDE;
|
| + virtual int OmniboxStartMargin() const OVERRIDE;
|
|
|
| void set_google_base_url(const std::string& google_base_url) {
|
| google_base_url_ = google_base_url;
|
| @@ -43,12 +44,16 @@ class TestSearchTermsData : public SearchTermsData {
|
| void set_is_showing_search_terms_on_search_results_pages(bool value) {
|
| is_showing_search_terms_on_search_results_pages_ = value;
|
| }
|
| + void set_omnibox_start_margin(int omnibox_start_margin) {
|
| + omnibox_start_margin_ = omnibox_start_margin;
|
| + }
|
|
|
| private:
|
| std::string google_base_url_;
|
| std::string search_client_;
|
| bool enable_answers_in_suggest_;
|
| bool is_showing_search_terms_on_search_results_pages_;
|
| + int omnibox_start_margin_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(TestSearchTermsData);
|
| };
|
| @@ -85,6 +90,10 @@ bool TestSearchTermsData::IsShowingSearchTermsOnSearchResultsPages() const {
|
| return is_showing_search_terms_on_search_results_pages_;
|
| }
|
|
|
| +int TestSearchTermsData::OmniboxStartMargin() const {
|
| + return omnibox_start_margin_;
|
| +}
|
| +
|
| // TemplateURLTest ------------------------------------------------------------
|
|
|
| class TemplateURLTest : public testing::Test {
|
| @@ -705,6 +714,42 @@ TEST_F(TemplateURLTest, ReplaceCurrentPageUrl) {
|
| }
|
| }
|
|
|
| +TEST_F(TemplateURLTest, OmniboxStartmargin) {
|
| + struct TestData {
|
| + const bool enable_omnibox_start_margin;
|
| + const int omnibox_start_margin;
|
| + const std::string expected_result;
|
| + } test_data[] = {
|
| + { false,
|
| + 0,
|
| + "http://bar/foo?q=foobar" },
|
| + { true,
|
| + 0,
|
| + "http://bar/foo?es_sm=0&q=foobar" },
|
| + { true,
|
| + 42,
|
| + "http://bar/foo?es_sm=42&q=foobar" },
|
| + };
|
| + TemplateURLData data;
|
| + data.SetURL("http://bar/foo?{google:omniboxStartMarginParameter}"
|
| + "q={searchTerms}");
|
| + data.input_encodings.push_back("UTF-8");
|
| + TemplateURL url(data);
|
| + EXPECT_TRUE(url.url_ref().IsValid(search_terms_data_));
|
| + ASSERT_TRUE(url.url_ref().SupportsReplacement(search_terms_data_));
|
| + for (size_t i = 0; i < ARRAYSIZE_UNSAFE(test_data); ++i) {
|
| + TemplateURLRef::SearchTermsArgs search_terms_args(ASCIIToUTF16("foobar"));
|
| + search_terms_args.enable_omnibox_start_margin =
|
| + test_data[i].enable_omnibox_start_margin;
|
| + search_terms_data_.set_omnibox_start_margin(
|
| + test_data[i].omnibox_start_margin);
|
| + GURL result(url.url_ref().ReplaceSearchTerms(search_terms_args,
|
| + search_terms_data_));
|
| + ASSERT_TRUE(result.is_valid());
|
| + EXPECT_EQ(test_data[i].expected_result, result.spec());
|
| + }
|
| +}
|
| +
|
| TEST_F(TemplateURLTest, Suggestions) {
|
| struct TestData {
|
| const int accepted_suggestion;
|
|
|