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

Unified Diff: chrome/browser/ui/autofill/autofill_dialog_controller_unittest.cc

Issue 15961007: Highlight fields we know to be invalid but have no way of locally checking. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 7 years, 7 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/ui/autofill/autofill_dialog_controller_unittest.cc
diff --git a/chrome/browser/ui/autofill/autofill_dialog_controller_unittest.cc b/chrome/browser/ui/autofill/autofill_dialog_controller_unittest.cc
index 396a6d8c09ad2e8d74c20f90b3fb2ae6779ed9c7..85eaa85d680f00ffda88dc1b79262b6c478791d4 100644
--- a/chrome/browser/ui/autofill/autofill_dialog_controller_unittest.cc
+++ b/chrome/browser/ui/autofill/autofill_dialog_controller_unittest.cc
@@ -459,57 +459,49 @@ TEST_F(AutofillDialogControllerTest, PhoneNumberValidation) {
// Existing data should have no errors.
ValidityData validity_data =
- controller()->InputsAreValid(outputs,
- AutofillDialogController::VALIDATE_FINAL);
+ controller()->InputsAreValid(outputs, VALIDATE_FINAL);
EXPECT_EQ(0U, validity_data.count(PHONE_HOME_WHOLE_NUMBER));
// Input an empty phone number with VALIDATE_FINAL.
SetOutputValue(inputs, &outputs, PHONE_HOME_WHOLE_NUMBER, "");
validity_data =
- controller()->InputsAreValid(outputs,
- AutofillDialogController::VALIDATE_FINAL);
+ controller()->InputsAreValid(outputs, VALIDATE_FINAL);
EXPECT_EQ(1U, validity_data.count(PHONE_HOME_WHOLE_NUMBER));
// Input an empty phone number with VALIDATE_EDIT.
validity_data =
- controller()->InputsAreValid(outputs,
- AutofillDialogController::VALIDATE_EDIT);
+ controller()->InputsAreValid(outputs, VALIDATE_EDIT);
EXPECT_EQ(0U, validity_data.count(PHONE_HOME_WHOLE_NUMBER));
// Input an invalid phone number.
SetOutputValue(inputs, &outputs, PHONE_HOME_WHOLE_NUMBER, "ABC");
validity_data =
- controller()->InputsAreValid(outputs,
- AutofillDialogController::VALIDATE_EDIT);
+ controller()->InputsAreValid(outputs, VALIDATE_EDIT);
EXPECT_EQ(1U, validity_data.count(PHONE_HOME_WHOLE_NUMBER));
// Input a local phone number.
SetOutputValue(inputs, &outputs, PHONE_HOME_WHOLE_NUMBER, "2155546699");
validity_data =
- controller()->InputsAreValid(outputs,
- AutofillDialogController::VALIDATE_EDIT);
+ controller()->InputsAreValid(outputs, VALIDATE_EDIT);
EXPECT_EQ(0U, validity_data.count(PHONE_HOME_WHOLE_NUMBER));
// Input an invalid local phone number.
SetOutputValue(inputs, &outputs, PHONE_HOME_WHOLE_NUMBER, "215554669");
validity_data =
- controller()->InputsAreValid(outputs,
- AutofillDialogController::VALIDATE_EDIT);
+ controller()->InputsAreValid(outputs, VALIDATE_EDIT);
EXPECT_EQ(1U, validity_data.count(PHONE_HOME_WHOLE_NUMBER));
// Input an international phone number.
SetOutputValue(inputs, &outputs, PHONE_HOME_WHOLE_NUMBER, "+33 892 70 12 39");
validity_data =
- controller()->InputsAreValid(outputs,
- AutofillDialogController::VALIDATE_EDIT);
+ controller()->InputsAreValid(outputs, VALIDATE_EDIT);
EXPECT_EQ(0U, validity_data.count(PHONE_HOME_WHOLE_NUMBER));
// Input an invalid international phone number.
SetOutputValue(inputs, &outputs, PHONE_HOME_WHOLE_NUMBER,
"+112333 892 70 12 39");
validity_data =
- controller()->InputsAreValid(outputs,
- AutofillDialogController::VALIDATE_EDIT);
+ controller()->InputsAreValid(outputs, VALIDATE_EDIT);
EXPECT_EQ(1U, validity_data.count(PHONE_HOME_WHOLE_NUMBER));
}
@@ -528,21 +520,18 @@ TEST_F(AutofillDialogControllerTest, CardHolderNameValidation) {
// Input an empty card holder name with VALIDATE_FINAL.
SetOutputValue(inputs, &outputs, CREDIT_CARD_NAME, "");
ValidityData validity_data =
- controller()->InputsAreValid(outputs,
- AutofillDialogController::VALIDATE_FINAL);
+ controller()->InputsAreValid(outputs, VALIDATE_FINAL);
EXPECT_EQ(1U, validity_data.count(CREDIT_CARD_NAME));
// Input an empty card holder name with VALIDATE_EDIT.
validity_data =
- controller()->InputsAreValid(outputs,
- AutofillDialogController::VALIDATE_EDIT);
+ controller()->InputsAreValid(outputs, VALIDATE_EDIT);
EXPECT_EQ(0U, validity_data.count(CREDIT_CARD_NAME));
// Input a non-empty card holder name.
SetOutputValue(inputs, &outputs, CREDIT_CARD_NAME, "Bob");
validity_data =
- controller()->InputsAreValid(outputs,
- AutofillDialogController::VALIDATE_FINAL);
+ controller()->InputsAreValid(outputs, VALIDATE_FINAL);
EXPECT_EQ(0U, validity_data.count(CREDIT_CARD_NAME));
// Switch to Wallet which only considers names with with at least two names to
@@ -565,46 +554,40 @@ TEST_F(AutofillDialogControllerTest, CardHolderNameValidation) {
// change this behavior.
SetOutputValue(wallet_inputs, &wallet_outputs, CREDIT_CARD_NAME, "");
validity_data =
- controller()->InputsAreValid(wallet_outputs,
- AutofillDialogController::VALIDATE_FINAL);
+ controller()->InputsAreValid(wallet_outputs, VALIDATE_FINAL);
EXPECT_EQ(1U, validity_data.count(CREDIT_CARD_NAME));
// Input an empty card holder name with VALIDATE_EDIT. Data source should not
// change this behavior.
validity_data =
- controller()->InputsAreValid(wallet_outputs,
- AutofillDialogController::VALIDATE_EDIT);
+ controller()->InputsAreValid(wallet_outputs, VALIDATE_EDIT);
EXPECT_EQ(0U, validity_data.count(CREDIT_CARD_NAME));
// Input a one name card holder name. Wallet does not currently support this.
SetOutputValue(wallet_inputs, &wallet_outputs, CREDIT_CARD_NAME, "Bob");
validity_data =
- controller()->InputsAreValid(wallet_outputs,
- AutofillDialogController::VALIDATE_FINAL);
+ controller()->InputsAreValid(wallet_outputs, VALIDATE_FINAL);
EXPECT_EQ(1U, validity_data.count(CREDIT_CARD_NAME));
// Input a two name card holder name.
SetOutputValue(wallet_inputs, &wallet_outputs, CREDIT_CARD_NAME,
"Bob Barker");
validity_data =
- controller()->InputsAreValid(wallet_outputs,
- AutofillDialogController::VALIDATE_FINAL);
+ controller()->InputsAreValid(wallet_outputs, VALIDATE_FINAL);
EXPECT_EQ(0U, validity_data.count(CREDIT_CARD_NAME));
// Input a more than two name card holder name.
SetOutputValue(wallet_inputs, &wallet_outputs, CREDIT_CARD_NAME,
"John Jacob Jingleheimer Schmidt");
validity_data =
- controller()->InputsAreValid(wallet_outputs,
- AutofillDialogController::VALIDATE_FINAL);
+ controller()->InputsAreValid(wallet_outputs, VALIDATE_FINAL);
EXPECT_EQ(0U, validity_data.count(CREDIT_CARD_NAME));
// Input a card holder name with lots of crazy whitespace.
SetOutputValue(wallet_inputs, &wallet_outputs, CREDIT_CARD_NAME,
" \\n\\r John \\n Jacob Jingleheimer \\t Schmidt ");
validity_data =
- controller()->InputsAreValid(wallet_outputs,
- AutofillDialogController::VALIDATE_FINAL);
+ controller()->InputsAreValid(wallet_outputs, VALIDATE_FINAL);
EXPECT_EQ(0U, validity_data.count(CREDIT_CARD_NAME));
}
@@ -1907,4 +1890,38 @@ TEST_F(AutofillDialogControllerTest, NotProdNotification) {
NotificationsOfType(DialogNotification::DEVELOPER_WARNING).empty());
}
+// Ensure Wallet instruments marked expired by the server are shown as invalid.
+TEST_F(AutofillDialogControllerTest, WalletExpiredCard) {
+ scoped_ptr<wallet::WalletItems> wallet_items = wallet::GetTestWalletItems();
+ wallet_items->AddInstrument(wallet::GetTestMaskedInstrumentExpired());
+ controller()->OnDidGetWalletItems(wallet_items.Pass());
+
+ EXPECT_TRUE(controller()->IsEditingExistingData(SECTION_CC_BILLING));
+
+ // Use |SetOutputValue()| to put the right AutofillFieldTypes into the map.
+ const DetailInputs& inputs =
+ controller()->RequestedFieldsForSection(SECTION_CC_BILLING);
+ DetailOutputMap outputs;
+ SetOutputValue(inputs, &outputs, COMPANY_NAME, "Bluth Company");
+
+ ValidityData validity_data =
+ controller()->InputsAreValid(outputs, VALIDATE_EDIT);
+ EXPECT_EQ(1U, validity_data.count(CREDIT_CARD_EXP_MONTH));
+ EXPECT_EQ(1U, validity_data.count(CREDIT_CARD_EXP_4_DIGIT_YEAR));
+
+ // Make the local input year differ from the instrument.
+ SetOutputValue(inputs, &outputs, CREDIT_CARD_EXP_4_DIGIT_YEAR, "3002");
+
+ validity_data = controller()->InputsAreValid(outputs, VALIDATE_EDIT);
+ EXPECT_EQ(0U, validity_data.count(CREDIT_CARD_EXP_MONTH));
+ EXPECT_EQ(0U, validity_data.count(CREDIT_CARD_EXP_4_DIGIT_YEAR));
+
+ // Make the local input month differ from the instrument.
+ SetOutputValue(inputs, &outputs, CREDIT_CARD_EXP_MONTH, "06");
+
+ validity_data = controller()->InputsAreValid(outputs, VALIDATE_EDIT);
+ EXPECT_EQ(0U, validity_data.count(CREDIT_CARD_EXP_MONTH));
+ EXPECT_EQ(0U, validity_data.count(CREDIT_CARD_EXP_4_DIGIT_YEAR));
+}
+
} // namespace autofill
« no previous file with comments | « chrome/browser/ui/autofill/autofill_dialog_controller_impl.cc ('k') | chrome/browser/ui/autofill/autofill_dialog_types.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698