| Index: components/omnibox/base_search_provider_unittest.cc
|
| diff --git a/components/omnibox/base_search_provider_unittest.cc b/components/omnibox/base_search_provider_unittest.cc
|
| index 42a9f1819719fce646e8bb54c0a9ca22e6b1dbbb..d5a2f6734a75ca84abc063611a46568cdb36f8f0 100644
|
| --- a/components/omnibox/base_search_provider_unittest.cc
|
| +++ b/components/omnibox/base_search_provider_unittest.cc
|
| @@ -11,6 +11,7 @@
|
| #include "components/omnibox/autocomplete_provider_client.h"
|
| #include "components/omnibox/autocomplete_scheme_classifier.h"
|
| #include "components/omnibox/search_suggestion_parser.h"
|
| +#include "components/omnibox/suggestion_answer.h"
|
| #include "components/search_engines/search_terms_data.h"
|
| #include "components/search_engines/template_url_service.h"
|
| #include "components/search_engines/template_url_service_client.h"
|
| @@ -124,6 +125,8 @@ TEST_F(BaseSearchProviderTest, PreserveAnswersWhenDeduplicating) {
|
| base::string16 query = base::ASCIIToUTF16("weather los angeles");
|
| base::string16 answer_contents = base::ASCIIToUTF16("some answer content");
|
| base::string16 answer_type = base::ASCIIToUTF16("2334");
|
| + scoped_ptr<SuggestionAnswer> answer(new SuggestionAnswer());
|
| + answer->set_type(2334);
|
|
|
| EXPECT_CALL(*provider_, GetInput(_))
|
| .WillRepeatedly(Return(AutocompleteInput()));
|
| @@ -132,16 +135,17 @@ TEST_F(BaseSearchProviderTest, PreserveAnswersWhenDeduplicating) {
|
|
|
| SearchSuggestionParser::SuggestResult more_relevant(
|
| query, AutocompleteMatchType::SEARCH_HISTORY, query, base::string16(),
|
| - base::string16(), base::string16(), base::string16(), std::string(),
|
| - std::string(), false, 1300, true, false, query);
|
| + base::string16(), base::string16(), base::string16(), nullptr,
|
| + std::string(), std::string(), false, 1300, true, false, query);
|
| provider_->AddMatchToMap(
|
| more_relevant, std::string(), TemplateURLRef::NO_SUGGESTION_CHOSEN,
|
| false, false, &map);
|
|
|
| SearchSuggestionParser::SuggestResult less_relevant(
|
| query, AutocompleteMatchType::SEARCH_SUGGEST, query, base::string16(),
|
| - base::string16(), answer_contents, answer_type, std::string(),
|
| - std::string(), false, 850, true, false, query);
|
| + base::string16(), answer_contents, answer_type,
|
| + SuggestionAnswer::copy(answer.get()), std::string(), std::string(),
|
| + false, 850, true, false, query);
|
| provider_->AddMatchToMap(
|
| less_relevant, std::string(), TemplateURLRef::NO_SUGGESTION_CHOSEN,
|
| false, false, &map);
|
| @@ -153,21 +157,27 @@ TEST_F(BaseSearchProviderTest, PreserveAnswersWhenDeduplicating) {
|
|
|
| EXPECT_EQ(answer_contents, match.answer_contents);
|
| EXPECT_EQ(answer_type, match.answer_type);
|
| + EXPECT_TRUE(answer->Equals(*match.answer));
|
| EXPECT_EQ(AutocompleteMatchType::SEARCH_HISTORY, match.type);
|
| EXPECT_EQ(1300, match.relevance);
|
|
|
| EXPECT_EQ(answer_contents, duplicate.answer_contents);
|
| EXPECT_EQ(answer_type, duplicate.answer_type);
|
| + EXPECT_TRUE(answer->Equals(*duplicate.answer));
|
| EXPECT_EQ(AutocompleteMatchType::SEARCH_SUGGEST, duplicate.type);
|
| EXPECT_EQ(850, duplicate.relevance);
|
|
|
| // Ensure answers are not copied over existing answers.
|
| map.clear();
|
| base::string16 answer_contents2 = base::ASCIIToUTF16("different answer");
|
| + base::string16 answer_type2 = base::ASCIIToUTF16("8242");
|
| + scoped_ptr<SuggestionAnswer> answer2(new SuggestionAnswer());
|
| + answer2->set_type(8242);
|
| more_relevant = SearchSuggestionParser::SuggestResult(
|
| query, AutocompleteMatchType::SEARCH_HISTORY, query, base::string16(),
|
| - base::string16(), answer_contents2, answer_type, std::string(),
|
| - std::string(), false, 1300, true, false, query);
|
| + base::string16(), answer_contents2, answer_type2,
|
| + SuggestionAnswer::copy(answer2.get()), std::string(), std::string(),
|
| + false, 1300, true, false, query);
|
| provider_->AddMatchToMap(
|
| more_relevant, std::string(), TemplateURLRef::NO_SUGGESTION_CHOSEN,
|
| false, false, &map);
|
| @@ -180,13 +190,14 @@ TEST_F(BaseSearchProviderTest, PreserveAnswersWhenDeduplicating) {
|
| duplicate = match.duplicate_matches[0];
|
|
|
| EXPECT_EQ(answer_contents2, match.answer_contents);
|
| - EXPECT_EQ(answer_type, match.answer_type);
|
| + EXPECT_EQ(answer_type2, match.answer_type);
|
| + EXPECT_TRUE(answer2->Equals(*match.answer));
|
| EXPECT_EQ(AutocompleteMatchType::SEARCH_HISTORY, match.type);
|
| EXPECT_EQ(1300, match.relevance);
|
|
|
| EXPECT_EQ(answer_contents, duplicate.answer_contents);
|
| EXPECT_EQ(answer_type, duplicate.answer_type);
|
| + EXPECT_TRUE(answer->Equals(*duplicate.answer));
|
| EXPECT_EQ(AutocompleteMatchType::SEARCH_SUGGEST, duplicate.type);
|
| EXPECT_EQ(850, duplicate.relevance);
|
| -
|
| }
|
|
|