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

Unified Diff: chrome/browser/history/thumbnail_database_unittest.cc

Issue 6283001: Remove TopSites::IsEnabled() as well as related dead code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 11 months 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
Index: chrome/browser/history/thumbnail_database_unittest.cc
diff --git a/chrome/browser/history/thumbnail_database_unittest.cc b/chrome/browser/history/thumbnail_database_unittest.cc
index 369486eb5946b3d7c5d053d817f7615eff0e7b4d..231c59a49f37510da044cc8ada7b8a5f6cfe38c9 100644
--- a/chrome/browser/history/thumbnail_database_unittest.cc
+++ b/chrome/browser/history/thumbnail_database_unittest.cc
@@ -71,297 +71,6 @@ class ThumbnailDatabaseTest : public testing::Test {
FilePath new_file_name_;
};
-TEST_F(ThumbnailDatabaseTest, AddDelete) {
- if (history::TopSites::IsEnabled())
- return; // TopSitesTest replaces this.
-
- ThumbnailDatabase db;
- ASSERT_EQ(sql::INIT_OK, db.Init(file_name_, NULL));
-
- // Add one page & verify it got added.
- ThumbnailScore boring(kBoringness, true, true);
- Time time;
- GURL gurl;
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, boring, time);
- ThumbnailScore score_output;
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_output));
- ASSERT_TRUE(boring.Equals(score_output));
-
- // Verify a random page is not found.
- int64 page2 = 5678;
- std::vector<unsigned char> jpeg_data;
- EXPECT_FALSE(db.GetPageThumbnail(page2, &jpeg_data));
- EXPECT_FALSE(db.ThumbnailScoreForId(page2, &score_output));
-
- // Add another page with a better boringness & verify it got added.
- ThumbnailScore better_boringness(kBetterBoringness, true, true);
-
- db.SetPageThumbnail(gurl, page2, *google_bitmap_, better_boringness, time);
- ASSERT_TRUE(db.ThumbnailScoreForId(page2, &score_output));
- ASSERT_TRUE(better_boringness.Equals(score_output));
-
- // Delete the thumbnail for the second page.
- ThumbnailScore worse_boringness(kWorseBoringness, true, true);
- db.SetPageThumbnail(gurl, page2, SkBitmap(), worse_boringness, time);
- ASSERT_FALSE(db.GetPageThumbnail(page2, &jpeg_data));
- ASSERT_FALSE(db.ThumbnailScoreForId(page2, &score_output));
-
- // Delete the first thumbnail using the explicit delete API.
- ASSERT_TRUE(db.DeleteThumbnail(kPage1));
-
- // Make sure it is gone
- ASSERT_FALSE(db.ThumbnailScoreForId(kPage1, &score_output));
- ASSERT_FALSE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_FALSE(db.ThumbnailScoreForId(page2, &score_output));
- ASSERT_FALSE(db.GetPageThumbnail(page2, &jpeg_data));
-}
-
-TEST_F(ThumbnailDatabaseTest, UseLessBoringThumbnails) {
- if (history::TopSites::IsEnabled())
- return; // TopSitesTest replaces this.
-
- ThumbnailDatabase db;
- Time now = Time::Now();
- ASSERT_EQ(sql::INIT_OK, db.Init(file_name_, NULL));
-
- // Add one page & verify it got added.
- ThumbnailScore boring(kBoringness, true, true);
-
- Time time;
- GURL gurl;
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, boring, time);
- std::vector<unsigned char> jpeg_data;
- ThumbnailScore score_out;
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(boring.Equals(score_out));
-
- // Attempt to update the first page entry with a thumbnail that
- // is more boring and verify that it doesn't change.
- ThumbnailScore more_boring(kWorseBoringness, true, true);
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, more_boring, time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(boring.Equals(score_out));
-
- // Attempt to update the first page entry with a thumbnail that
- // is less boring and verify that we update it.
- ThumbnailScore less_boring(kBetterBoringness, true, true);
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, less_boring, time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(less_boring.Equals(score_out));
-}
-
-TEST_F(ThumbnailDatabaseTest, UseAtTopThumbnails) {
- if (history::TopSites::IsEnabled())
- return; // TopSitesTest replaces this.
-
- ThumbnailDatabase db;
- Time now = Time::Now();
- ASSERT_EQ(sql::INIT_OK, db.Init(file_name_, NULL));
-
- // Add one page & verify it got added. Note that it doesn't have
- // |good_clipping| and isn't |at_top|.
- ThumbnailScore boring_and_bad(kBoringness, false, false);
-
- Time time;
- GURL gurl;
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, boring_and_bad, time);
- std::vector<unsigned char> jpeg_data;
- ThumbnailScore score_out;
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(boring_and_bad.Equals(score_out));
-
- // A thumbnail that's at the top of the page should replace
- // thumbnails that are in the middle, for the same boringness.
- ThumbnailScore boring_but_better(kBoringness, false, true);
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, boring_but_better, time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(boring_but_better.Equals(score_out));
-
- // The only case where we should replace a thumbnail at the top with
- // a thumbnail in the middle/bottom is when the current thumbnail is
- // weirdly stretched and the incoming thumbnail isn't.
- ThumbnailScore better_boring_bad_framing(kBetterBoringness, false, false);
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, better_boring_bad_framing,
- time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(boring_but_better.Equals(score_out));
-
- ThumbnailScore boring_good_clipping(kBoringness, true, false);
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, boring_good_clipping,
- time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(boring_good_clipping.Equals(score_out));
-
- // Now that we have a non-stretched, middle of the page thumbnail,
- // we shouldn't be able to replace it with:
-
- // 1) A stretched thumbnail in the middle of the page
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_,
- ThumbnailScore(kBetterBoringness, false, false, now),
- time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(boring_good_clipping.Equals(score_out));
-
- // 2) A stretched thumbnail at the top of the page
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_,
- ThumbnailScore(kBetterBoringness, false, true, now),
- time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(boring_good_clipping.Equals(score_out));
-
- // But it should be replaced by a thumbnail that's clipped properly
- // and is at the top
- ThumbnailScore best_score(kBetterBoringness, true, true);
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, best_score, time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(best_score.Equals(score_out));
-}
-
-TEST_F(ThumbnailDatabaseTest, ThumbnailTimeDegradation) {
- if (history::TopSites::IsEnabled())
- return; // TopSitesTest replaces this.
-
- ThumbnailDatabase db;
- const Time kNow = Time::Now();
- const Time kThreeHoursAgo = kNow - TimeDelta::FromHours(4);
- const Time kFiveHoursAgo = kNow - TimeDelta::FromHours(6);
- const double kBaseBoringness = 0.305;
- const double kWorseBoringness = 0.345;
-
- ASSERT_EQ(sql::INIT_OK, db.Init(file_name_, NULL));
-
- // add one page & verify it got added.
- ThumbnailScore base_boringness(kBaseBoringness, true, true, kFiveHoursAgo);
-
- Time time;
- GURL gurl;
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, base_boringness, time);
- std::vector<unsigned char> jpeg_data;
- ThumbnailScore score_out;
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(base_boringness.Equals(score_out));
-
- // Try to add a different thumbnail with a worse score an hour later
- // (but not enough to trip the boringness degradation threshold).
- ThumbnailScore hour_later(kWorseBoringness, true, true, kThreeHoursAgo);
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, hour_later, time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(base_boringness.Equals(score_out));
-
- // After a full five hours, things should have degraded enough
- // that we'll allow the same thumbnail with the same (worse)
- // boringness that we previous rejected.
- ThumbnailScore five_hours_later(kWorseBoringness, true, true, kNow);
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, five_hours_later, time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(five_hours_later.Equals(score_out));
-}
-
-TEST_F(ThumbnailDatabaseTest, NeverAcceptTotallyBoringThumbnail) {
- // We enforce a maximum boringness score: even in cases where we
- // should replace a thumbnail with another because of reasons other
- // than straight up boringness score, still reject because the
- // thumbnail is totally boring.
- if (history::TopSites::IsEnabled())
- return; // TopSitesTest replaces this.
-
- ThumbnailDatabase db;
- Time now = Time::Now();
- ASSERT_EQ(sql::INIT_OK, db.Init(file_name_, NULL));
-
- std::vector<unsigned char> jpeg_data;
- ThumbnailScore score_out;
- const double kBaseBoringness = 0.50;
- const Time kNow = Time::Now();
- const int kSizeOfTable = 4;
- struct {
- bool good_scaling;
- bool at_top;
- } const heiarchy_table[] = {
- {false, false},
- {false, true},
- {true, false},
- {true, true}
- };
-
- Time time;
- GURL gurl;
-
- // Test that for each entry type, all entry types that are better
- // than it still will reject thumbnails which are totally boring.
- for (int i = 0; i < kSizeOfTable; ++i) {
- ThumbnailScore base(kBaseBoringness,
- heiarchy_table[i].good_scaling,
- heiarchy_table[i].at_top,
- kNow);
-
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, base, time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(base.Equals(score_out));
-
- for (int j = i; j < kSizeOfTable; ++j) {
- ThumbnailScore shouldnt_replace(
- kTotallyBoring, heiarchy_table[j].good_scaling,
- heiarchy_table[j].at_top, kNow);
-
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, shouldnt_replace,
- time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(base.Equals(score_out));
- }
-
- // Clean up for the next iteration
- ASSERT_TRUE(db.DeleteThumbnail(kPage1));
- ASSERT_FALSE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_FALSE(db.ThumbnailScoreForId(kPage1, &score_out));
- }
-
- // We should never accept a totally boring thumbnail no matter how
- // much old the current thumbnail is.
- ThumbnailScore base_boring(kBaseBoringness, true, true, kNow);
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_, base_boring, time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(base_boring.Equals(score_out));
-
- ThumbnailScore totally_boring_in_the_future(
- kTotallyBoring, true, true, kNow + TimeDelta::FromDays(365));
- db.SetPageThumbnail(gurl, kPage1, *google_bitmap_,
- totally_boring_in_the_future, time);
- ASSERT_TRUE(db.GetPageThumbnail(kPage1, &jpeg_data));
- ASSERT_TRUE(db.ThumbnailScoreForId(kPage1, &score_out));
- ASSERT_TRUE(base_boring.Equals(score_out));
-}
-
-TEST_F(ThumbnailDatabaseTest, NeedsMigrationToTopSites) {
- if (history::TopSites::IsEnabled())
- return; // TopSitesTest replaces this.
-
- ThumbnailDatabase db;
- ASSERT_EQ(sql::INIT_OK, db.Init(file_name_, NULL));
- db.BeginTransaction();
- EXPECT_TRUE(db.NeedsMigrationToTopSites());
- EXPECT_TRUE(db.RenameAndDropThumbnails(file_name_, new_file_name_));
- EXPECT_FALSE(db.NeedsMigrationToTopSites());
- EXPECT_FALSE(file_util::PathExists(file_name_));
- EXPECT_TRUE(file_util::PathExists(new_file_name_));
-}
-
TEST_F(ThumbnailDatabaseTest, GetFaviconAfterMigrationToTopSites) {
ThumbnailDatabase db;
ASSERT_EQ(sql::INIT_OK, db.Init(file_name_, NULL));

Powered by Google App Engine
This is Rietveld 408576698