|
|
Created:
7 years, 6 months ago by Jered Modified:
7 years, 6 months ago CC:
chromium-reviews, skanuj+watch_chromium.org, melevin+watch_chromium.org, dhollowa+watch_chromium.org, dougw+watch_chromium.org, donnd+watch_chromium.org, mad+watch_chromium.org, dominich, jfweitz+watch_chromium.org, David Black, samarth+watch_chromium.org, kmadhusu+watch_chromium.org, James Su Base URL:
svn://svn.chromium.org/chrome/trunk/src Visibility:
Public. |
DescriptionRemove Instant hooks from SearchProvider.
Old Instant is gone, and InstantExtended is not cramming its suggestion
into autocomplete this way.
BUG=251262
TEST=Unit test and manually.
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=208741
Patch Set 1 #
Total comments: 5
Patch Set 2 : Address comments. #Patch Set 3 : Rebase. #
Total comments: 2
Patch Set 4 : Braces. #Patch Set 5 : Rebase. #Patch Set 6 : More rebasing. #Patch Set 7 : Still more rebasing. #
Messages
Total messages: 21 (0 generated)
Please review. msw -> search_provider pkasting -> search_provider, omnibox samarth -> instant
LGTM https://codereview.chromium.org/17391005/diff/1/chrome/browser/autocomplete/s... File chrome/browser/autocomplete/search_provider.cc (right): https://codereview.chromium.org/17391005/diff/1/chrome/browser/autocomplete/s... chrome/browser/autocomplete/search_provider.cc:10: #include "base/auto_reset.h" Nit: Remove this header (and any others that are now unnecessary) https://codereview.chromium.org/17391005/diff/1/chrome/browser/autocomplete/s... chrome/browser/autocomplete/search_provider.cc:504: bool SearchProvider::IsDone() const { Nit: Eliminate this function and inline its contents into the lone caller
search_provider[_unittest] LGTM with a nit. https://codereview.chromium.org/17391005/diff/1/chrome/browser/autocomplete/s... File chrome/browser/autocomplete/search_provider.h (right): https://codereview.chromium.org/17391005/diff/1/chrome/browser/autocomplete/s... chrome/browser/autocomplete/search_provider.h:28: #include "chrome/common/instant_types.h" nit: remove this.
https://codereview.chromium.org/17391005/diff/1/chrome/browser/autocomplete/s... File chrome/browser/autocomplete/search_provider.cc (right): https://codereview.chromium.org/17391005/diff/1/chrome/browser/autocomplete/s... chrome/browser/autocomplete/search_provider.cc:10: #include "base/auto_reset.h" On 2013/06/18 19:01:32, Peter Kasting wrote: > Nit: Remove this header (and any others that are now unnecessary) Done. https://codereview.chromium.org/17391005/diff/1/chrome/browser/autocomplete/s... chrome/browser/autocomplete/search_provider.cc:504: bool SearchProvider::IsDone() const { On 2013/06/18 19:01:32, Peter Kasting wrote: > Nit: Eliminate this function and inline its contents into the lone caller Done.
Hey Philippe, since you are refactoring the omnibox, does this make sense to you? I'm not sure how we're going to do instant when we get around to it again, but I wanted to rip this way out as part of cleaning up after old Instant.
My refactor (which just landed, so you'll probably have to merge) is still assuming that the instant result will transit through SearchProvider and that FinalizeInstantQuery will be called, but the goal was always to get rid of this at some point so your CL makes sense. I haven't taken a deep look at that CL, but I believe you'll need to trigger the omnibox model update manually from OmniboxController::SetInstantSuggestion ==> INSTANT_COMPLETE_NOW when you re-enable instant suggestions. I have some TODO mentioning that in my CL. Also: thanks for doing this! :)
Kausalya, could you take a look at instant since samarth is out? I've tried to be pretty minimal and focus this change on ripping out obsolete omnibox stuff from old Instant.
lgtm. Since I am not an OWNER of instant code, you need to TBR samarth@ in the CL description. Thanks. https://codereview.chromium.org/17391005/diff/17001/chrome/browser/ui/omnibox... File chrome/browser/ui/omnibox/omnibox_controller.cc (right): https://codereview.chromium.org/17391005/diff/17001/chrome/browser/ui/omnibox... chrome/browser/ui/omnibox/omnibox_controller.cc:72: if (instant_controller) { nit: Remove {}.
On 2013/06/25 23:30:33, kmadhusu wrote: > lgtm. > > Since I am not an OWNER of instant code, you need to TBR samarth@ in the CL > description. > > Thanks. > > https://codereview.chromium.org/17391005/diff/17001/chrome/browser/ui/omnibox... > File chrome/browser/ui/omnibox/omnibox_controller.cc (right): > > https://codereview.chromium.org/17391005/diff/17001/chrome/browser/ui/omnibox... > chrome/browser/ui/omnibox/omnibox_controller.cc:72: if (instant_controller) { > nit: Remove {}. Thanks for the quick review. Since I am also an owner, I think your review should cover it. :-)
https://codereview.chromium.org/17391005/diff/17001/chrome/browser/ui/omnibox... File chrome/browser/ui/omnibox/omnibox_controller.cc (right): https://codereview.chromium.org/17391005/diff/17001/chrome/browser/ui/omnibox... chrome/browser/ui/omnibox/omnibox_controller.cc:72: if (instant_controller) { On 2013/06/25 23:30:33, kmadhusu wrote: > nit: Remove {}. Done.
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jered@chromium.org/17391005/26001
Failed to apply patch for chrome/browser/autocomplete/search_provider.cc: While running patch -p1 --forward --force --no-backup-if-mismatch; patching file chrome/browser/autocomplete/search_provider.cc Hunk #2 succeeded at 249 (offset 20 lines). Hunk #3 FAILED at 350. Hunk #4 succeeded at 539 (offset 22 lines). Hunk #5 succeeded at 548 (offset 22 lines). Hunk #6 succeeded at 584 (offset 22 lines). Hunk #7 succeeded at 609 (offset 22 lines). Hunk #8 FAILED at 857. Hunk #9 FAILED at 1083. Hunk #10 FAILED at 1104. Hunk #11 succeeded at 1662 (offset 68 lines). 4 out of 11 hunks FAILED -- saving rejects to file chrome/browser/autocomplete/search_provider.cc.rej Patch: chrome/browser/autocomplete/search_provider.cc Index: chrome/browser/autocomplete/search_provider.cc diff --git a/chrome/browser/autocomplete/search_provider.cc b/chrome/browser/autocomplete/search_provider.cc index 45f7803ae8f7e5021e4b0b4f10ad8d339d361834..77fb5b02c6016a4ce01b92ffeedd5a5d99dad494 100644 --- a/chrome/browser/autocomplete/search_provider.cc +++ b/chrome/browser/autocomplete/search_provider.cc @@ -7,7 +7,6 @@ #include <algorithm> #include <cmath> -#include "base/auto_reset.h" #include "base/callback.h" #include "base/i18n/break_iterator.h" #include "base/i18n/case_conversion.h" @@ -230,10 +229,8 @@ SearchProvider::SearchProvider(AutocompleteProviderListener* listener, AutocompleteProvider::TYPE_SEARCH), providers_(TemplateURLServiceFactory::GetForProfile(profile)), suggest_results_pending_(0), - instant_finalized_(false), field_trial_triggered_(false), field_trial_triggered_in_session_(false), - suppress_search_suggestions_(false), omnibox_start_margin_(-1) { } @@ -353,96 +350,10 @@ void SearchProvider::ResetSession() { field_trial_triggered_in_session_ = false; } -void SearchProvider::FinalizeInstantQuery(const string16& input_text, - const InstantSuggestion& suggestion) { - if (done_ || instant_finalized_) - return; - - instant_finalized_ = true; - UpdateDone(); - - if (input_text.empty()) { - // We only need to update the listener if we're actually done. - if (done_) - listener_->OnProviderUpdate(false); - return; - } - - default_provider_suggestion_ = suggestion; - - string16 adjusted_input_text(input_text); - AutocompleteInput::RemoveForcedQueryStringIfNecessary(input_.type(), - &adjusted_input_text); - - const string16 text = adjusted_input_text + suggestion.text; - bool results_updated = false; - // Remove any matches that are identical to |text|. We don't use the - // destination_url for comparison as it varies depending upon the index passed - // to TemplateURL::ReplaceSearchTerms. - for (ACMatches::iterator i = matches_.begin(); i != matches_.end();) { - if (((i->type == AutocompleteMatchType::SEARCH_HISTORY) || - (i->type == AutocompleteMatchType::SEARCH_SUGGEST)) && - (i->fill_into_edit == text)) { - i = matches_.erase(i); - results_updated = true; - } else { - ++i; - } - } - - // Add the new Instant suggest result. - if (suggestion.type == INSTANT_SUGGESTION_SEARCH) { - // Instant has a query suggestion. Rank it higher than SEARCH_WHAT_YOU_TYPED - // so that it gets autocompleted. - const int verbatim_relevance = GetVerbatimRelevance(); - int did_not_accept_default_suggestion = - default_results_.suggest_results.empty() ? - TemplateURLRef::NO_SUGGESTIONS_AVAILABLE : - TemplateURLRef::NO_SUGGESTION_CHOSEN; - MatchMap match_map; - AddMatchToMap(text, adjusted_input_text, verbatim_relevance + 1, - AutocompleteMatchType::SEARCH_SUGGEST, - did_not_accept_default_suggestion, false, &match_map); - if (!match_map.empty()) { - matches_.push_back(match_map.begin()->second); - results_updated = true; - } - } else { - // Instant has a URL suggestion. Rank it higher than URL_WHAT_YOU_TYPED so - // it gets autocompleted; use kNonURLVerbatimRelevance rather than - // verbatim_relevance so that the score does not change if the user keeps - // typing and the input changes from type UNKNOWN to URL. - matches_.push_back(NavigationToMatch(NavigationResult( - *this, GURL(UTF16ToUTF8(suggestion.text)), string16(), false, - kNonURLVerbatimRelevance + 1))); - results_updated = true; - } - - if (results_updated || done_) - listener_->OnProviderUpdate(results_updated); -} - -void SearchProvider::ClearInstantSuggestion() { - default_provider_suggestion_ = InstantSuggestion(); - if (done_ || instant_finalized_) - return; - instant_finalized_ = true; - UpdateMatches(); - listener_->OnProviderUpdate(true); -} - -void SearchProvider::SuppressSearchSuggestions() { - suppress_search_suggestions_ = true; -} - void SearchProvider::SetOmniboxStartMargin(int omnibox_start_margin) { omnibox_start_margin_ = omnibox_start_margin; } -bool SearchProvider::IsNonInstantSearchDone() const { - return !timer_.IsRunning() && (suggest_results_pending_ == 0); -} - SearchProvider::~SearchProvider() { } @@ -520,9 +431,6 @@ int SearchProvider::CalculateRelevanceForKeywordVerbatim( void SearchProvider::Start(const AutocompleteInput& input, bool minimal_changes) { - const bool suppress_search_suggestions = suppress_search_suggestions_; - suppress_search_suggestions_ = false; - // Do our best to load the model as early as possible. This will reduce // odds of having the model not ready when really needed (a non-empty input). TemplateURLService* model = providers_.template_url_service(); @@ -532,9 +440,6 @@ void SearchProvider::Start(const AutocompleteInput& input, matches_.clear(); field_trial_triggered_ = false; - instant_finalized_ = - (input.matches_requested() != AutocompleteInput::ALL_MATCHES); - // Can't return search/suggest results for bogus input or without a profile. if (!profile_ || (input.type() == AutocompleteInput::INVALID)) { Stop(false); @@ -571,23 +476,9 @@ void SearchProvider::Start(const AutocompleteInput& input, keyword_provider->keyword() : string16()); if (!minimal_changes || !providers_.equal(default_provider_keyword, keyword_provider_keyword)) { - // If Instant has not come back with a suggestion, adjust the previous - // suggestion if possible. If |instant_finalized| is true, we are looking - // for synchronous matches only, so the suggestion is cleared. - if (instant_finalized_) - default_provider_suggestion_ = InstantSuggestion(); - else - AdjustDefaultProviderSuggestion(input_.text(), input.text()); - // Cancel any in-flight suggest requests. - if (!done_) { - // The Stop(false) call below clears |default_provider_suggestion_|, but - // in this instance we do not want to clear cached results, so we - // restore it. - base::AutoReset<InstantSuggestion> reset(&default_provider_suggestion_, - InstantSuggestion()); + if (!done_) Stop(false); - } } providers_.set(default_provider_keyword, keyword_provider_keyword); @@ -610,17 +501,14 @@ void SearchProvider::Start(const AutocompleteInput& input, input_ = input; - if (!suppress_search_suggestions) { - DoHistoryQuery(minimal_changes); - StartOrStopSuggestQuery(minimal_changes); - } + DoHistoryQuery(minimal_changes); + StartOrStopSuggestQuery(minimal_changes); UpdateMatches(); } void SearchProvider::Stop(bool clear_cached_results) { StopSuggest(); done_ = true; - default_provider_suggestion_ = InstantSuggestion(); if (clear_cached_results) ClearAllResults(); @@ -883,39 +771,6 @@ void SearchProvider::RemoveAllStaleResults() { } } -void SearchProvider::AdjustDefaultProviderSuggestion( - const string16& previous_input, - const string16& current_input) { - if (default_provider_suggestion_.type == INSTANT_SUGGESTION_URL) { - // Description and relevance do not matter in the check for staleness. - NavigationResult result(*this, GURL(default_provider_suggestion_.text), - string16(), false, 100); - // If navigation suggestion is stale, clear |default_provider_suggestion_|. - if (!result.IsInlineable(current_input)) - default_provider_suggestion_ = InstantSuggestion(); - } else { - DCHECK(default_provider_suggestion_.type == INSTANT_SUGGESTION_SEARCH); - // InstantSuggestion of type SEARCH contain only the suggested text, and not - // the full text of the query. This looks at the current and previous input - // to determine if the user is typing forward, and if the new input is - // contained in |default_provider_suggestion_|. If so, the suggestion is - // adjusted and can be kept. Otherwise, it is reset. - if (!previous_input.empty() && - StartsWith(current_input, previous_input, false)) { - // User is typing forward; verify if new input is part of the suggestion. - const string16 new_text = string16(current_input, previous_input.size()); - if (StartsWith(default_provider_suggestion_.text, new_text, false)) { - // New input is a prefix to the previous suggestion, adjust the - // suggestion to strip the prefix. - default_provider_suggestion_.text.erase(0, new_text.size()); - return; - } - } - // If we are here, the search suggestion is stale; reset it. - default_provider_suggestion_ = InstantSuggestion(); - } -} - void SearchProvider::ApplyCalculatedRelevance() { ApplyCalculatedSuggestRelevance(&keyword_results_.suggest_results); ApplyCalculatedSuggestRelevance(&default_results_.suggest_results); @@ -1109,14 +964,6 @@ void SearchProvider::ConvertResultsToAutocompleteMatches() { } } c… (message too large)
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jered@chromium.org/17391005/11002
Sorry for I got bad news for ya. Compile failed with a clobber build on android_dbg. http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=android_db... Your code is likely broken or HEAD is junk. Please ensure your code is not broken then alert the build sheriffs. Look at the try server FAQ for more details.
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jered@chromium.org/17391005/45001
Failed to apply patch for chrome/browser/autocomplete/search_provider_unittest.cc: While running patch -p1 --forward --force --no-backup-if-mismatch; patching file chrome/browser/autocomplete/search_provider_unittest.cc Hunk #3 FAILED at 508. Hunk #4 FAILED at 1657. Hunk #5 succeeded at 1735 (offset -3 lines). 2 out of 5 hunks FAILED -- saving rejects to file chrome/browser/autocomplete/search_provider_unittest.cc.rej Patch: chrome/browser/autocomplete/search_provider_unittest.cc Index: chrome/browser/autocomplete/search_provider_unittest.cc diff --git a/chrome/browser/autocomplete/search_provider_unittest.cc b/chrome/browser/autocomplete/search_provider_unittest.cc index 36453c2d8f9d493616ab45e4c59677657836157e..1422344bfd14d953db61df590c03d8f1e6acf9f8 100644 --- a/chrome/browser/autocomplete/search_provider_unittest.cc +++ b/chrome/browser/autocomplete/search_provider_unittest.cc @@ -25,7 +25,6 @@ #include "chrome/browser/search_engines/template_url.h" #include "chrome/browser/search_engines/template_url_service.h" #include "chrome/browser/search_engines/template_url_service_factory.h" -#include "chrome/common/instant_types.h" #include "chrome/common/metrics/entropy_provider.h" #include "chrome/common/pref_names.h" #include "chrome/test/base/testing_browser_process.h" @@ -286,7 +285,6 @@ void SearchProviderTest::QueryForInputAndSetWYTMatch( QueryForInput(text, false, false); profile_.BlockUntilHistoryProcessesPendingRequests(); ASSERT_NO_FATAL_FAILURE(FinishDefaultSuggestQuery()); - EXPECT_NE(chrome::IsInstantExtendedAPIEnabled(), provider_->done()); if (!wyt_match) return; ASSERT_GE(provider_->matches().size(), 1u); @@ -510,191 +508,6 @@ TEST_F(SearchProviderTest, DontSendPrivateDataToSuggest) { } } -// Make sure FinalizeInstantQuery works. -TEST_F(SearchProviderTest, FinalizeInstantQuery) { - chrome::EnableInstantExtendedAPIForTesting(); - - ASSERT_NO_FATAL_FAILURE(QueryForInputAndSetWYTMatch(ASCIIToUTF16("foo"), - NULL)); - - // Tell the provider Instant is done. - provider_->FinalizeInstantQuery(ASCIIToUTF16("foo"), - InstantSuggestion(ASCIIToUTF16("bar"), - INSTANT_COMPLETE_NOW, - INSTANT_SUGGESTION_SEARCH, - string16(), - kNoMatchIndex)); - - // The provider should now be done. - EXPECT_TRUE(provider_->done()); - - // There should be two matches, one for what you typed, the other for - // 'foobar'. - EXPECT_EQ(2u, provider_->matches().size()); - GURL instant_url(default_t_url_->url_ref().ReplaceSearchTerms( - TemplateURLRef::SearchTermsArgs(ASCIIToUTF16("foobar")))); - AutocompleteMatch instant_match; - EXPECT_TRUE(FindMatchWithDestination(instant_url, &instant_match)); - - // And the 'foobar' match should not have a description, it'll be set later. - EXPECT_TRUE(instant_match.description.empty()); - - // Make sure the what you typed match has no description. - AutocompleteMatch wyt_match; - EXPECT_TRUE(FindMatchWithDestination( - GURL(default_t_url_->url_ref().ReplaceSearchTerms( - TemplateURLRef::SearchTermsArgs(ASCIIToUTF16("foo")))), - &wyt_match)); - EXPECT_TRUE(wyt_match.description.empty()); - - // Instant search suggestions are never inline autocompleted, so they should - // score less than the WYT match. - EXPECT_LT(instant_match.relevance, wyt_match.relevance); -} - -// Make sure FinalizeInstantQuery works with URL suggestions. -TEST_F(SearchProviderTest, FinalizeInstantURL) { - chrome::EnableInstantExtendedAPIForTesting(); - - ASSERT_NO_FATAL_FAILURE(QueryForInputAndSetWYTMatch(ASCIIToUTF16("ex"), - NULL)); - - // Tell the provider Instant is done. - provider_->FinalizeInstantQuery(ASCIIToUTF16("ex"), - InstantSuggestion( - ASCIIToUTF16("http://example.com/"), - INSTANT_COMPLETE_NOW, - INSTANT_SUGGESTION_URL, - string16(), - kNoMatchIndex)); - - // The provider should now be done. - EXPECT_TRUE(provider_->done()); - - // There should be two matches, one for what you typed, the other for - // "http://example.com/". - EXPECT_EQ(2u, provider_->matches().size()); - GURL instant_url("http://example.com"); - AutocompleteMatch instant_match; - EXPECT_TRUE(FindMatchWithDestination(instant_url, &instant_match)); - - // The Instant match should not have a description, it'll be set later. - EXPECT_TRUE(instant_match.description.empty()); - - // Make sure the what you typed match has no description. - AutocompleteMatch wyt_match; - EXPECT_TRUE(FindMatchWithDestination( - GURL(default_t_url_->url_ref().ReplaceSearchTerms( - TemplateURLRef::SearchTermsArgs(ASCIIToUTF16("ex")))), - &wyt_match)); - EXPECT_TRUE(wyt_match.description.empty()); - - // The Instant URL should be more relevant. - EXPECT_GT(instant_match.relevance, wyt_match.relevance); -} - -// An Instant URL suggestion should behave the same way whether the input text -// is classified as UNKNOWN or as an URL. Otherwise if the user types -// "example.co" url-what-you-typed will displace the Instant suggestion for -// "example.com". -TEST_F(SearchProviderTest, FinalizeInstantURLWithURLText) { - chrome::EnableInstantExtendedAPIForTesting(); - - ASSERT_NO_FATAL_FAILURE(QueryForInputAndSetWYTMatch( - ASCIIToUTF16("example.co"), NULL)); - - // Tell the provider Instant is done. - provider_->FinalizeInstantQuery(ASCIIToUTF16("example.co"), - InstantSuggestion( - ASCIIToUTF16("http://example.com/"), - INSTANT_COMPLETE_NOW, - INSTANT_SUGGESTION_URL, - string16(), - kNoMatchIndex)); - - // The provider should now be done. - EXPECT_TRUE(provider_->done()); - - // There should be two matches, one for what you typed, the other for - // "http://example.com/". - EXPECT_EQ(2u, provider_->matches().size()); - GURL instant_url("http://example.com"); - AutocompleteMatch instant_match; - EXPECT_TRUE(FindMatchWithDestination(instant_url, &instant_match)); - - // The Instant match should not have a description, it'll be set later. - EXPECT_TRUE(instant_match.description.empty()); - - // The Instant URL should be more relevant than a URL_WHAT_YOU_TYPED match. - EXPECT_GT(instant_match.relevance, - HistoryURLProvider::kScoreForWhatYouTypedResult); -} - -// Make sure that if FinalizeInstantQuery is invoked before suggest results -// return, the suggest text from FinalizeInstantQuery is remembered. -TEST_F(SearchProviderTest, RememberInstantQuery) { - chrome::EnableInstantExtendedAPIForTesting(); - - QueryForInput(ASCIIToUTF16("foo"), false, false); - - // Finalize the Instant query immediately. - provider_->FinalizeInstantQuery(ASCIIToUTF16("foo"), - InstantSuggestion(ASCIIToUTF16("bar"), - INSTANT_COMPLETE_NOW, - INSTANT_SUGGESTION_SEARCH, - string16(), - kNoMatchIndex)); - - // There should be two matches, one for what you typed, the other for - // 'foobar'. - EXPECT_EQ(2u, provider_->matches().size()); - GURL instant_url(default_t_url_->url_ref().ReplaceSearchTerms( - TemplateURLRef::SearchTermsArgs(ASCIIToUTF16("foobar")))); - AutocompleteMatch instant_match; - EXPECT_TRUE(FindMatchWithDestination(instant_url, &instant_match)); - - // Wait until history and the suggest query complete. - profile_.BlockUntilHistoryProcessesPendingRequests(); - ASSERT_NO_FATAL_FAILURE(FinishDefaultSuggestQuery()); - - // Provider should be done. - EXPECT_TRUE(provider_->done()); - - // There should be two matches, one for what you typed, the other for - // 'foobar'. - EXPECT_EQ(2u, provider_->matches().size()); - EXPECT_TRUE(FindMatchWithDestination(instant_url, &instant_match)); - - // And the 'foobar' match should not have a description, it'll be set later. - EXPECT_TRUE(instant_match.description.empty()); -} - -// Make sure that if trailing whitespace is added to the text supplied to -// AutocompleteInput the default suggest text is cleared. -TEST_F(SearchProviderTest, DifferingText) { - chrome::EnableInstantExtendedAPIForTesting(); - - ASSERT_NO_FATAL_FAILURE(QueryForInputAndSetWYTMatch(ASCIIToUTF16("foo"), - NULL)); - - // Finalize the Instant query immediately. - provider_->FinalizeInstantQuery(ASCIIToUTF16("foo"), - InstantSuggestion(ASCIIToUTF16("bar"), - INSTANT_COMPLETE_NOW, - INSTANT_SUGGESTION_SEARCH, - string16(), - kNoMatchIndex)); - - // Query with the same input text, but trailing whitespace. - AutocompleteMatch instant_match; - ASSERT_NO_FATAL_FAILURE(QueryForInputAndSetWYTMatch(ASCIIToUTF16("foo "), - &instant_match)); - - // There should only one match, for what you typed. - EXPECT_EQ(1u, provider_->matches().size()); - EXPECT_FALSE(instant_match.destination_url.is_empty()); -} - TEST_F(SearchProviderTe… (message too large)
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jered@chromium.org/17391005/50001
Step "update" is always a major failure. Look at the try server FAQ for more details. http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=linux_aura...
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jered@chromium.org/17391005/50001
Message was sent while issue was closed.
Change committed as 208741 |