Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(157)

Unified Diff: chrome/browser/autocomplete/autocomplete_result_unittest.cc

Issue 69703002: Modified GetMatchToPrefetch() to return a valid match for prefetching even when hide_verbatim flag i (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed comments Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/autocomplete/autocomplete_result.cc ('k') | chrome/browser/ui/omnibox/omnibox_controller.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/autocomplete/autocomplete_result_unittest.cc
diff --git a/chrome/browser/autocomplete/autocomplete_result_unittest.cc b/chrome/browser/autocomplete/autocomplete_result_unittest.cc
index e3fa9bc5fd52c4c848db3f52cc0fffef7c4f4fd8..403d92f28de377b93404c151e4d1b96517a2d1a6 100644
--- a/chrome/browser/autocomplete/autocomplete_result_unittest.cc
+++ b/chrome/browser/autocomplete/autocomplete_result_unittest.cc
@@ -78,6 +78,11 @@ class AutocompleteResultTest : public testing::Test {
const TestData* current, size_t current_size,
const TestData* expected, size_t expected_size);
+ // Creates an AutocompleteMatch using |destination_url| and |type| and appends
Mark P 2013/12/13 01:10:55 There's no reason for this to be in the class. It
kmadhusu 2013/12/13 17:59:17 Done.
+ // it to |matches|.
+ void AddMatch(const GURL& destination_url, AutocompleteMatch::Type type,
+ ACMatches* matches);
+
protected:
TemplateURLServiceTestUtil test_util_;
@@ -152,6 +157,21 @@ void AutocompleteResultTest::RunCopyOldMatchesTest(
AssertResultMatches(current_result, expected, expected_size);
}
+void AutocompleteResultTest::AddMatch(const GURL& destination_url,
+ AutocompleteMatch::Type type,
+ ACMatches* matches) {
+ ASSERT_TRUE(matches != NULL);
+ AutocompleteMatch* previous_match =
Mark P 2013/12/13 01:10:55 nit: last_match please.
kmadhusu 2013/12/13 17:59:17 Done.
+ !matches->empty() ? &((*matches)[matches->size() -1]) : NULL;
Mark P 2013/12/13 01:10:55 nit: space before 1
kmadhusu 2013/12/13 17:59:17 Done.
+ AutocompleteMatch match;
+ match.destination_url = destination_url;
+ match.relevance =
+ previous_match ? previous_match->relevance - 100 : 1300;
+ match.allowed_to_be_default_match = true;
+ match.type = type;
+ matches->push_back(match);
+}
+
// Assertion testing for AutocompleteResult::Swap.
TEST_F(AutocompleteResultTest, Swap) {
AutocompleteResult r1;
@@ -318,38 +338,21 @@ TEST_F(AutocompleteResultTest, SortAndCullDuplicateSearchURLs) {
TEST_F(AutocompleteResultTest, SortAndCullWithDemotionsByType) {
// Add some matches.
ACMatches matches;
- {
- AutocompleteMatch match;
- match.destination_url = GURL("http://history-url/");
- match.relevance = 1400;
- match.allowed_to_be_default_match = true;
- match.type = AutocompleteMatchType::HISTORY_URL;
- matches.push_back(match);
- }
- {
- AutocompleteMatch match;
- match.destination_url = GURL("http://search-what-you-typed/");
- match.relevance = 1300;
- match.allowed_to_be_default_match = true;
- match.type = AutocompleteMatchType::SEARCH_WHAT_YOU_TYPED;
- matches.push_back(match);
- }
- {
- AutocompleteMatch match;
- match.destination_url = GURL("http://history-title/");
- match.relevance = 1200;
- match.allowed_to_be_default_match = true;
- match.type = AutocompleteMatchType::HISTORY_TITLE;
- matches.push_back(match);
- }
- {
- AutocompleteMatch match;
- match.destination_url = GURL("http://search-history/");
- match.relevance = 500;
- match.allowed_to_be_default_match = true;
- match.type = AutocompleteMatchType::SEARCH_HISTORY;
- matches.push_back(match);
- }
+ AddMatch(GURL("http://history-url/"),
+ AutocompleteMatchType::HISTORY_URL,
kmadhusu 2013/12/13 01:00:29 For better readability, I have added the arguments
Mark P 2013/12/13 01:10:55 Please consider putting them all one line if they
kmadhusu 2013/12/13 17:59:17 Done.
+ &matches);
+ AddMatch(GURL("http://search-what-you-typed/"),
+ AutocompleteMatchType::SEARCH_WHAT_YOU_TYPED,
+ &matches);
+ AddMatch(GURL("http://history-title/"),
+ AutocompleteMatchType::HISTORY_TITLE,
+ &matches);
+
+ // Add a search history type match and demote its relevance score.
+ AddMatch(GURL("http://search-history/"),
+ AutocompleteMatchType::SEARCH_HISTORY,
+ &matches);
+ matches[matches.size()-1].relevance = 500;
Mark P 2013/12/13 01:10:55 nit: spaces around binary operators (-)
kmadhusu 2013/12/13 17:59:17 Done.
// Add a rule demoting history-url and killing history-title.
{
@@ -486,3 +489,150 @@ TEST_F(AutocompleteResultTest, SortAndCullReorderForDefaultMatch) {
EXPECT_EQ("http://d/", result.match_at(3)->destination_url.spec());
}
}
+
+TEST_F(AutocompleteResultTest, ShouldHideTopMatch) {
+ // Add some matches.
+ ACMatches matches;
+ AddMatch(GURL("http://search-what-you-typed/"),
+ AutocompleteMatchType::SEARCH_WHAT_YOU_TYPED,
+ &matches);
+ AddMatch(GURL("http://history-title/"),
+ AutocompleteMatchType::HISTORY_TITLE,
+ &matches);
+ AddMatch(GURL("http://search-history/"),
+ AutocompleteMatchType::SEARCH_HISTORY,
+ &matches);
+
+ base::FieldTrialList::CreateFieldTrial("InstantExtended",
+ "Group1 hide_verbatim:1");
+ AutocompleteResult result;
+ result.AppendMatches(matches);
+ EXPECT_TRUE(result.ShouldHideTopMatch());
+}
+
+TEST_F(AutocompleteResultTest, DoNotHideTopMatch) {
+ ACMatches matches;
+ AddMatch(GURL("http://search-what-you-typed/"),
+ AutocompleteMatchType::SEARCH_WHAT_YOU_TYPED,
+ &matches);
+ AddMatch(GURL("http://url-what-you-typed/"),
+ AutocompleteMatchType::URL_WHAT_YOU_TYPED,
+ &matches);
+ AddMatch(GURL("http://history-title/"),
+ AutocompleteMatchType::HISTORY_TITLE,
+ &matches);
+ AddMatch(GURL("http://search-history/"),
+ AutocompleteMatchType::SEARCH_HISTORY,
+ &matches);
+
+ base::FieldTrialList::CreateFieldTrial("InstantExtended",
+ "Group1 hide_verbatim:1");
+ AutocompleteResult result;
+ result.AppendMatches(matches);
+ // If the verbatim first match is followed by another verbatim match, don't
+ // hide the top verbatim match.
+ EXPECT_FALSE(result.ShouldHideTopMatch());
+}
+
+TEST_F(AutocompleteResultTest, DoNotHideTopMatch_TopMatchIsNotVerbatim) {
+ ACMatches matches;
+ AddMatch(GURL("http://search-history/"),
+ AutocompleteMatchType::SEARCH_HISTORY,
+ &matches);
+ AddMatch(GURL("http://search-what-you-typed/"),
+ AutocompleteMatchType::SEARCH_WHAT_YOU_TYPED,
+ &matches);
+ AddMatch(GURL("http://history-title/"),
+ AutocompleteMatchType::HISTORY_TITLE,
+ &matches);
+
+ base::FieldTrialList::CreateFieldTrial("InstantExtended",
+ "Group1 hide_verbatim:1");
+ AutocompleteResult result;
+ result.AppendMatches(matches);
+ // Top match is not a verbatim type match. Do not hide the top match.
+ EXPECT_FALSE(result.ShouldHideTopMatch());
+}
+
+TEST_F(AutocompleteResultTest, DoNotHideTopMatch_FieldTrialFlagDisabled) {
Mark P 2013/12/13 01:10:55 Please comment here that this is an identical conf
kmadhusu 2013/12/13 17:59:17 Done.
+ // Add some matches.
+ ACMatches matches;
+ AddMatch(GURL("http://search-what-you-typed/"),
+ AutocompleteMatchType::SEARCH_WHAT_YOU_TYPED,
+ &matches);
+ AddMatch(GURL("http://history-title/"),
+ AutocompleteMatchType::HISTORY_TITLE,
+ &matches);
+ AddMatch(GURL("http://search-history/"),
+ AutocompleteMatchType::SEARCH_HISTORY,
+ &matches);
+
+ base::FieldTrialList::CreateFieldTrial("InstantExtended",
+ "Group1 hide_verbatim:0");
+ AutocompleteResult result;
+ result.AppendMatches(matches);
+ // Field trial flag "hide_verbatim" is disabled. Do not hide top match.
+ EXPECT_FALSE(result.ShouldHideTopMatch());
+}
+
+TEST_F(AutocompleteResultTest,
+ TopMatchIsVerbatimAndHasNoConsecutiveVerbatimMatches) {
+ ACMatches matches;
+ AddMatch(GURL("http://url-what-you-typed/"),
+ AutocompleteMatchType::URL_WHAT_YOU_TYPED,
+ &matches);
+ AddMatch(GURL("http://history-title/"),
+ AutocompleteMatchType::HISTORY_TITLE,
+ &matches);
+
+ AutocompleteResult result;
+ result.AppendMatches(matches);
+ EXPECT_TRUE(result.TopMatchIsVerbatimAndHasNoConsecutiveVerbatimMatches());
+}
+
+TEST_F(AutocompleteResultTest,
+ TopMatchIsVerbatimAndHasConsecutiveVerbatimMatches) {
+ ACMatches matches;
+ AddMatch(GURL("http://url-what-you-typed/"),
+ AutocompleteMatchType::URL_WHAT_YOU_TYPED,
+ &matches);
+ AddMatch(GURL("http://url-what-you-typed-1/"),
+ AutocompleteMatchType::URL_WHAT_YOU_TYPED,
Mark P 2013/12/13 01:10:55 There can be only one URL_WHAT_YOU_TYPED. This se
kmadhusu 2013/12/13 17:59:17 Done.
+ &matches);
+ AddMatch(GURL("http://history-title/"),
+ AutocompleteMatchType::HISTORY_TITLE,
+ &matches);
+
+ AutocompleteResult result;
+ result.AppendMatches(matches);
+ EXPECT_FALSE(result.TopMatchIsVerbatimAndHasNoConsecutiveVerbatimMatches());
+}
+
+TEST_F(AutocompleteResultTest, TopMatchIsNotVerbatim) {
+ ACMatches matches;
+ AutocompleteResult result;
+ result.AppendMatches(matches);
+
+ // Result set is empty.
+ EXPECT_FALSE(result.TopMatchIsVerbatimAndHasNoConsecutiveVerbatimMatches());
+
+ // Add a non-verbatim match to the result.
+ AddMatch(GURL("http://history-title/"),
+ AutocompleteMatchType::HISTORY_TITLE,
+ &matches);
+
+ result.AppendMatches(matches);
+ EXPECT_FALSE(result.TopMatchIsVerbatimAndHasNoConsecutiveVerbatimMatches());
+}
+
+TEST_F(AutocompleteResultTest,
+ TopMatchIsVerbatimAndHasNoConsecutiveVerbatimMatches_SingleMatchFound) {
+ ACMatches matches;
+ AddMatch(GURL("http://url-what-you-typed/"),
+ AutocompleteMatchType::URL_WHAT_YOU_TYPED,
+ &matches);
+
+ AutocompleteResult result;
+ result.AppendMatches(matches);
+ EXPECT_TRUE(result.TopMatchIsVerbatimAndHasNoConsecutiveVerbatimMatches());
+}
« no previous file with comments | « chrome/browser/autocomplete/autocomplete_result.cc ('k') | chrome/browser/ui/omnibox/omnibox_controller.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698