| 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 011772907e47d200bde7f0f38e317793d9ad3f29..0d8297f4b9f07e325a4dd5ea295d0184bafe424e 100644
|
| --- a/chrome/browser/history/thumbnail_database_unittest.cc
|
| +++ b/chrome/browser/history/thumbnail_database_unittest.cc
|
| @@ -275,19 +275,20 @@ TEST_F(ThumbnailDatabaseTest, UpgradeToVersion4) {
|
|
|
| EXPECT_TRUE(db.UpgradeToVersion4());
|
|
|
| - std::vector<unsigned char> data(blob1, blob1 + sizeof(blob1));
|
| - scoped_refptr<base::RefCountedBytes> favicon(new base::RefCountedBytes(data));
|
| -
|
| GURL url("http://google.com");
|
| - FaviconID id = db.AddFavicon(url, TOUCH_ICON);
|
| - base::Time time = base::Time::Now();
|
| - db.SetFavicon(id, favicon, time);
|
|
|
| - EXPECT_TRUE(0 < db.AddIconMapping(url, id));
|
| - IconMapping icon_mapping;
|
| - EXPECT_TRUE(db.GetIconMappingForPageURL(url, TOUCH_ICON, &icon_mapping));
|
| - EXPECT_EQ(url, icon_mapping.page_url);
|
| - EXPECT_EQ(id, icon_mapping.icon_id);
|
| + sql::Statement statement;
|
| + statement.Assign(db.db_.GetCachedStatement(SQL_FROM_HERE,
|
| + "INSERT INTO favicons (url, icon_type) VALUES (?, ?)"));
|
| + statement.BindString(0, URLDatabase::GURLToDatabaseURL(url));
|
| + statement.BindInt(1, TOUCH_ICON);
|
| + EXPECT_TRUE(statement.Run());
|
| +
|
| + statement.Assign(db.db_.GetCachedStatement(SQL_FROM_HERE,
|
| + "SELECT icon_type FROM favicons"));
|
| + EXPECT_TRUE(statement.Step());
|
| +
|
| + EXPECT_EQ(TOUCH_ICON, static_cast<IconType>(statement.ColumnInt(0)));
|
| }
|
|
|
| TEST_F(ThumbnailDatabaseTest, UpgradeToVersion5) {
|
| @@ -318,6 +319,58 @@ TEST_F(ThumbnailDatabaseTest, UpgradeToVersion5) {
|
| EXPECT_TRUE(db.db_.Execute(sql.c_str()));
|
| }
|
|
|
| +TEST_F(ThumbnailDatabaseTest, UpgradeToVersion6) {
|
| + ThumbnailDatabase db;
|
| + ASSERT_EQ(sql::INIT_OK, db.Init(file_name_, NULL, NULL));
|
| + db.BeginTransaction();
|
| +
|
| + const char* name = "favicons";
|
| + std::string sql;
|
| + sql.append("DROP TABLE IF EXISTS ");
|
| + sql.append(name);
|
| + EXPECT_TRUE(db.db_.Execute(sql.c_str()));
|
| +
|
| + sql.resize(0);
|
| + sql.append("CREATE TABLE ");
|
| + sql.append(name);
|
| + sql.append("("
|
| + "id INTEGER PRIMARY KEY,"
|
| + "url LONGVARCHAR NOT NULL,"
|
| + "last_updated INTEGER DEFAULT 0,"
|
| + "image_data BLOB,"
|
| + "icon_type INTEGER DEFAULT 1,"
|
| + "sizes LONGVARCHAR)");
|
| + EXPECT_TRUE(db.db_.Execute(sql.c_str()));
|
| +
|
| + GURL url("http://google.com");
|
| +
|
| + sql::Statement statement;
|
| + statement.Assign(db.db_.GetCachedStatement(SQL_FROM_HERE,
|
| + "INSERT INTO favicons (url, icon_type) VALUES (?, ?)"));
|
| + statement.BindString(0, URLDatabase::GURLToDatabaseURL(url));
|
| + statement.BindInt(1, FAVICON);
|
| + EXPECT_TRUE(statement.Run());
|
| +
|
| + statement.Assign(db.db_.GetCachedStatement(SQL_FROM_HERE,
|
| + "INSERT INTO favicons (url, icon_type) VALUES (?, ?)"));
|
| + statement.BindString(0, URLDatabase::GURLToDatabaseURL(url));
|
| + statement.BindInt(1, TOUCH_ICON);
|
| + EXPECT_TRUE(statement.Run());
|
| +
|
| + EXPECT_TRUE(db.UpgradeToVersion6());
|
| +
|
| + statement.Assign(db.db_.GetCachedStatement(SQL_FROM_HERE,
|
| + "SELECT icon_type, size FROM favicons ORDER BY icon_type ASC"));
|
| +
|
| + EXPECT_TRUE(statement.Step());
|
| + EXPECT_EQ(FAVICON, statement.ColumnInt(0));
|
| + EXPECT_EQ(16, statement.ColumnInt(1));
|
| +
|
| + EXPECT_TRUE(statement.Step());
|
| + EXPECT_EQ(TOUCH_ICON, statement.ColumnInt(0));
|
| + EXPECT_EQ(0, statement.ColumnInt(1));
|
| +}
|
| +
|
| TEST_F(ThumbnailDatabaseTest, TemporayIconMapping) {
|
| ThumbnailDatabase db;
|
|
|
|
|