| Index: chrome/browser/autofill/autofill_manager_unittest.cc
|
| ===================================================================
|
| --- chrome/browser/autofill/autofill_manager_unittest.cc (revision 71339)
|
| +++ chrome/browser/autofill/autofill_manager_unittest.cc (working copy)
|
| @@ -1586,3 +1586,44 @@
|
| #endif
|
| }
|
|
|
| +TEST_F(AutoFillManagerTest, DataPresence) {
|
| + std::vector<uint8> presence_bitfield;
|
| +
|
| + presence_bitfield.resize((MAX_VALID_FIELD_TYPE + 0x7) >> 3);
|
| + for (size_t i = 0; i < presence_bitfield.size(); ++i)
|
| + presence_bitfield[i] = 0;
|
| +
|
| + EXPECT_EQ("",
|
| + autofill_manager_->ConvertPresenceBitsToString(presence_bitfield));
|
| + autofill_manager_->SetPresenceBit(UNKNOWN_TYPE, &presence_bitfield);
|
| + EXPECT_EQ("40",
|
| + autofill_manager_->ConvertPresenceBitsToString(presence_bitfield));
|
| + presence_bitfield[0] = 0;
|
| + autofill_manager_->SetPresenceBit(PHONE_HOME_WHOLE_NUMBER,
|
| + &presence_bitfield);
|
| + EXPECT_EQ("0002",
|
| + autofill_manager_->ConvertPresenceBitsToString(presence_bitfield));
|
| + autofill_manager_->SetPresenceBit(UNKNOWN_TYPE, &presence_bitfield);
|
| + EXPECT_EQ("4002",
|
| + autofill_manager_->ConvertPresenceBitsToString(presence_bitfield));
|
| + autofill_manager_->SetPresenceBit(ADDRESS_BILLING_LINE1, &presence_bitfield);
|
| + autofill_manager_->SetPresenceBit(ADDRESS_BILLING_LINE2, &presence_bitfield);
|
| + autofill_manager_->SetPresenceBit(ADDRESS_BILLING_CITY, &presence_bitfield);
|
| + autofill_manager_->SetPresenceBit(ADDRESS_BILLING_STATE, &presence_bitfield);
|
| + autofill_manager_->SetPresenceBit(ADDRESS_BILLING_ZIP, &presence_bitfield);
|
| + EXPECT_EQ("4002000006e0",
|
| + autofill_manager_->ConvertPresenceBitsToString(presence_bitfield));
|
| + autofill_manager_->SetPresenceBit(CREDIT_CARD_NUMBER, &presence_bitfield);
|
| + autofill_manager_->SetPresenceBit(COMPANY_NAME, &presence_bitfield);
|
| + EXPECT_EQ("4002000006e00808",
|
| + autofill_manager_->ConvertPresenceBitsToString(presence_bitfield));
|
| +
|
| + for (size_t i = 0; i < MAX_VALID_FIELD_TYPE; ++i) {
|
| + autofill_manager_->SetPresenceBit(static_cast<AutoFillFieldType>(i),
|
| + &presence_bitfield);
|
| + }
|
| +
|
| + EXPECT_EQ("fffffffffffffff8",
|
| + autofill_manager_->ConvertPresenceBitsToString(presence_bitfield));
|
| +}
|
| +
|
|
|