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

Unified Diff: components/webdata/common/web_database_migration_unittest.cc

Issue 2703673002: [Merge-57] Add billing_address_id and has_converted to autofill_table (Closed)
Patch Set: Created 3 years, 10 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
« no previous file with comments | « components/webdata/common/web_database.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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..3229f86ea0e3807efc04547da2b385520d0f6ba9 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) {
@@ -1029,6 +1029,7 @@ TEST_F(WebDatabaseMigrationTest, MigrateVersion65ToCurrent) {
}
// Tests addition of masked server credit card billing address.
+// That column was moved to server_card_metadata in version 71.
TEST_F(WebDatabaseMigrationTest, MigrateVersion66ToCurrent) {
ASSERT_NO_FATAL_FAILURE(LoadDatabase(FILE_PATH_LITERAL("version_66.sql")));
@@ -1060,14 +1061,11 @@ TEST_F(WebDatabaseMigrationTest, MigrateVersion66ToCurrent) {
// Check version.
EXPECT_EQ(kCurrentTestedVersionNumber, VersionFromConnection(&connection));
- EXPECT_TRUE(connection.DoesColumnExist("masked_credit_cards",
+ // The column was moved to server_card_metadata in version 71.
+ EXPECT_FALSE(connection.DoesColumnExist("masked_credit_cards",
+ "billing_address_id"));
+ EXPECT_TRUE(connection.DoesColumnExist("server_card_metadata",
"billing_address_id"));
-
- sql::Statement read_masked(connection.GetUniqueStatement(
- "SELECT name_on_card, billing_address_id FROM masked_credit_cards"));
- ASSERT_TRUE(read_masked.Step());
- EXPECT_EQ("Alice", read_masked.ColumnString(0));
- EXPECT_TRUE(read_masked.ColumnString(1).empty());
}
}
@@ -1166,3 +1164,81 @@ 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));
+
+ // The billing_address_id column should have moved from masked_credit_cards
+ // to server_card_metadata.
+ EXPECT_FALSE(connection.DoesColumnExist("masked_credit_cards",
+ "billing_address_id"));
+ EXPECT_TRUE(connection.DoesColumnExist("server_card_metadata",
+ "billing_address_id"));
+
+ // The has_converted column should have been added in
+ // server_address_metadata.
+ 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. The values
+ // are added to the table in version_70.sql.
+ 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));
+ 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_FALSE(s_addresses_metadata.ColumnBool(1));
+
+ // Make sure that the values in masked_credit_cards are still present except
+ // for the billing_address_id. The values are added to the table in
+ // version_70.sql.
+ sql::Statement s_masked_cards(connection.GetUniqueStatement(
+ "SELECT id, status, name_on_card, type, last_four, exp_month, exp_year "
+ "FROM masked_credit_cards"));
+ ASSERT_TRUE(s_masked_cards.Step());
+ EXPECT_EQ("card_1", s_masked_cards.ColumnString(0));
+ EXPECT_EQ("status", s_masked_cards.ColumnString(1));
+ EXPECT_EQ("bob", s_masked_cards.ColumnString(2));
+ EXPECT_EQ("MASKED", s_masked_cards.ColumnString(3));
+ EXPECT_EQ("1234", s_masked_cards.ColumnString(4));
+ EXPECT_EQ(12, s_masked_cards.ColumnInt(5));
+ EXPECT_EQ(2050, s_masked_cards.ColumnInt(6));
+ }
+}
« no previous file with comments | « components/webdata/common/web_database.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698