Chromium Code Reviews| Index: components/webdata/common/web_database_migration_unittest.cc |
| diff --git a/components/webdata/common/web_database_migration_unittest.cc b/components/webdata/common/web_database_migration_unittest.cc |
| index 82aa0c619fb9bbe1e8c7b2c2b0ce9d1da1a787e5..6ad6a9aff17de4f52d21b61d16654fc5818b1b24 100644 |
| --- a/components/webdata/common/web_database_migration_unittest.cc |
| +++ b/components/webdata/common/web_database_migration_unittest.cc |
| @@ -130,7 +130,7 @@ class WebDatabaseMigrationTest : public testing::Test { |
| DISALLOW_COPY_AND_ASSIGN(WebDatabaseMigrationTest); |
| }; |
| -const int WebDatabaseMigrationTest::kCurrentTestedVersionNumber = 70; |
| +const int WebDatabaseMigrationTest::kCurrentTestedVersionNumber = 71; |
| void WebDatabaseMigrationTest::LoadDatabase( |
| const base::FilePath::StringType& file) { |
| @@ -1166,3 +1166,60 @@ TEST_F(WebDatabaseMigrationTest, MigrateVersion69ToCurrent) { |
| EXPECT_TRUE(connection.DoesTableExist("autofill_model_type_state")); |
| } |
| } |
| + |
| +// Tests addition of billing_address_id to server_card_metadata and |
| +// has_converted to server_profile_metadata and tests that the |
| +// billing_address_id values were moved from the masked_credit_cards table to |
| +// the server_card_metadata table. |
| +TEST_F(WebDatabaseMigrationTest, MigrateVersion70ToCurrent) { |
| + ASSERT_NO_FATAL_FAILURE(LoadDatabase(FILE_PATH_LITERAL("version_70.sql"))); |
| + |
| + // Verify pre-conditions. |
| + { |
| + sql::Connection connection; |
| + ASSERT_TRUE(connection.Open(GetDatabasePath())); |
| + ASSERT_TRUE(sql::MetaTable::DoesTableExist(&connection)); |
| + |
| + sql::MetaTable meta_table; |
| + ASSERT_TRUE(meta_table.Init(&connection, 70, 70)); |
| + |
| + EXPECT_FALSE(connection.DoesColumnExist("server_card_metadata", |
| + "billing_address_id")); |
| + EXPECT_FALSE( |
| + connection.DoesColumnExist("server_address_metadata", "has_converted")); |
| + } |
| + |
| + DoMigration(); |
| + |
| + // Verify post-conditions. |
| + { |
| + sql::Connection connection; |
| + ASSERT_TRUE(connection.Open(GetDatabasePath())); |
| + ASSERT_TRUE(sql::MetaTable::DoesTableExist(&connection)); |
| + |
| + // Check version. |
| + EXPECT_EQ(kCurrentTestedVersionNumber, VersionFromConnection(&connection)); |
| + |
| + EXPECT_TRUE(connection.DoesColumnExist("server_card_metadata", |
| + "billing_address_id")); |
| + EXPECT_TRUE( |
| + connection.DoesColumnExist("server_address_metadata", "has_converted")); |
| + |
| + // Make sure that the billing_address_id was moved from the |
| + // masked_credit_cards table to the server_card_metadata table. |
| + sql::Statement s_cards_metadata( |
| + connection.GetUniqueStatement( |
| + "SELECT id, billing_address_id FROM server_card_metadata")); |
| + ASSERT_TRUE(s_cards_metadata.Step()); |
| + EXPECT_EQ("card_1", s_cards_metadata.ColumnString(0)); |
|
please use gerrit instead
2017/01/12 19:10:59
Add a comment that this is defined in version_70.s
sebsg
2017/01/12 19:21:13
Done.
|
| + EXPECT_EQ("address_1", s_cards_metadata.ColumnString(1)); |
| + |
| + // Make sure that the has_converted column was set to false. |
| + sql::Statement s_addresses_metadata( |
| + connection.GetUniqueStatement( |
| + "SELECT id, has_converted FROM server_address_metadata")); |
| + ASSERT_TRUE(s_addresses_metadata.Step()); |
| + EXPECT_EQ("address_1", s_addresses_metadata.ColumnString(0)); |
| + EXPECT_EQ(false, s_addresses_metadata.ColumnBool(1)); |
| + } |
| +} |