diff options
author | mrossetti@chromium.org <mrossetti@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-24 14:08:55 +0000 |
---|---|---|
committer | mrossetti@chromium.org <mrossetti@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-24 14:08:55 +0000 |
commit | 61623711e224217f24269ec1ba5554e3e908b92c (patch) | |
tree | 9b9eae613b98c1cfdf3547ce802426b700c16b53 /chrome/browser/history/url_database_unittest.cc | |
parent | 3cac7aad8de5684d54876306e924d2c17b7c8a02 (diff) | |
download | chromium_src-61623711e224217f24269ec1ba5554e3e908b92c.zip chromium_src-61623711e224217f24269ec1ba5554e3e908b92c.tar.gz chromium_src-61623711e224217f24269ec1ba5554e3e908b92c.tar.bz2 |
Add caching of the InMemoryURLIndex (part of the HistoryQuickProvider) part 1. (Transactions will be introduced in the next submission.) Fixed a problem in the caching of search results as the user types each character in a search term. Updated the unit test associated with that code.
Added (temporary) flag which can be used to turn on the HQP (enable-history-quick-provider); also added it to about:flags.
Previously reviewed as http://codereview.chromium.org/6286029/.
BUG=19736,60107
TEST=Added unit tests.
Review URL: http://codereview.chromium.org/6581024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75882 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/history/url_database_unittest.cc')
-rw-r--r-- | chrome/browser/history/url_database_unittest.cc | 43 |
1 files changed, 39 insertions, 4 deletions
diff --git a/chrome/browser/history/url_database_unittest.cc b/chrome/browser/history/url_database_unittest.cc index b164e48..c2f22ff6 100644 --- a/chrome/browser/history/url_database_unittest.cc +++ b/chrome/browser/history/url_database_unittest.cc @@ -125,8 +125,7 @@ TEST_F(URLDatabaseTest, AddURL) { // Tests adding, querying and deleting keyword visits. TEST_F(URLDatabaseTest, KeywordSearchTermVisit) { - const GURL url1("http://www.google.com/"); - URLRow url_info1(url1); + URLRow url_info1(GURL("http://www.google.com/")); url_info1.set_title(UTF8ToUTF16("Google")); url_info1.set_visit_count(4); url_info1.set_typed_count(2); @@ -165,8 +164,7 @@ TEST_F(URLDatabaseTest, KeywordSearchTermVisit) { // Make sure deleting a URL also deletes a keyword visit. TEST_F(URLDatabaseTest, DeleteURLDeletesKeywordSearchTermVisit) { - const GURL url1("http://www.google.com/"); - URLRow url_info1(url1); + URLRow url_info1(GURL("http://www.google.com/")); url_info1.set_title(UTF8ToUTF16("Google")); url_info1.set_visit_count(4); url_info1.set_typed_count(2); @@ -187,4 +185,41 @@ TEST_F(URLDatabaseTest, DeleteURLDeletesKeywordSearchTermVisit) { ASSERT_EQ(0U, matches.size()); } +TEST_F(URLDatabaseTest, EnumeratorForSignificant) { + std::set<std::string> good_urls; + // Add URLs which do and don't meet the criteria. + URLRow url_no_match(GURL("http://www.url_no_match.com/")); + EXPECT_TRUE(AddURL(url_no_match)); + + std::string url_string2("http://www.url_match_visit_count.com/"); + good_urls.insert("http://www.url_match_visit_count.com/"); + URLRow url_match_visit_count(GURL("http://www.url_match_visit_count.com/")); + url_match_visit_count.set_visit_count(kLowQualityMatchVisitLimit + 1); + EXPECT_TRUE(AddURL(url_match_visit_count)); + + good_urls.insert("http://www.url_match_typed_count.com/"); + URLRow url_match_typed_count(GURL("http://www.url_match_typed_count.com/")); + url_match_typed_count.set_typed_count(kLowQualityMatchTypedLimit + 1); + EXPECT_TRUE(AddURL(url_match_typed_count)); + + good_urls.insert("http://www.url_match_last_visit.com/"); + URLRow url_match_last_visit(GURL("http://www.url_match_last_visit.com/")); + url_match_last_visit.set_last_visit(Time::Now() - TimeDelta::FromDays(1)); + EXPECT_TRUE(AddURL(url_match_last_visit)); + + URLRow url_no_match_last_visit(GURL( + "http://www.url_no_match_last_visit.com/")); + url_no_match_last_visit.set_last_visit(Time::Now() - + TimeDelta::FromDays(kLowQualityMatchAgeLimitInDays + 1)); + EXPECT_TRUE(AddURL(url_no_match_last_visit)); + + URLDatabase::URLEnumerator history_enum; + EXPECT_TRUE(InitURLEnumeratorForSignificant(&history_enum)); + URLRow row; + int row_count = 0; + for (; history_enum.GetNextURL(&row); ++row_count) + EXPECT_EQ(1U, good_urls.count(row.url().spec())); + EXPECT_EQ(3, row_count); +} + } // namespace history |