| Index: chrome/browser/ui/views/payments/payment_request_credit_card_editor_interactive_uitest.cc
|
| diff --git a/chrome/browser/ui/views/payments/payment_request_credit_card_editor_interactive_uitest.cc b/chrome/browser/ui/views/payments/payment_request_credit_card_editor_interactive_uitest.cc
|
| index 0edfcf45804712bc73fd8841c07cfd086f3f3f40..2dfcc616ea0a0b2f90a365f81bec896fc5860e0b 100644
|
| --- a/chrome/browser/ui/views/payments/payment_request_credit_card_editor_interactive_uitest.cc
|
| +++ b/chrome/browser/ui/views/payments/payment_request_credit_card_editor_interactive_uitest.cc
|
| @@ -3,8 +3,12 @@
|
| // found in the LICENSE file.
|
|
|
| #include "base/macros.h"
|
| +#include "base/strings/utf_string_conversions.h"
|
| #include "chrome/browser/ui/views/payments/payment_request_dialog_view_ids.h"
|
| #include "chrome/browser/ui/views/payments/payment_request_interactive_uitest_base.h"
|
| +#include "components/autofill/core/browser/field_types.h"
|
| +#include "components/autofill/core/browser/personal_data_manager.h"
|
| +#include "components/payments/payment_request.h"
|
|
|
| namespace payments {
|
|
|
| @@ -14,26 +18,67 @@ class PaymentRequestCreditCardEditorTest
|
| PaymentRequestCreditCardEditorTest()
|
| : PaymentRequestInteractiveTestBase(
|
| "/payment_request_no_shipping_test.html") {}
|
| -
|
| private:
|
| DISALLOW_COPY_AND_ASSIGN(PaymentRequestCreditCardEditorTest);
|
| };
|
|
|
| -IN_PROC_BROWSER_TEST_F(PaymentRequestCreditCardEditorTest,
|
| - OpenCreditCardEditor) {
|
| +IN_PROC_BROWSER_TEST_F(PaymentRequestCreditCardEditorTest, EnteringValidData) {
|
| InvokePaymentRequestUI();
|
|
|
| OpenPaymentMethodScreen();
|
|
|
| OpenCreditCardEditorScreen();
|
|
|
| - // TODO(mathp): Test input and validation.
|
| + SetEditorTextfieldValue(base::ASCIIToUTF16("Bob Jones"),
|
| + autofill::CREDIT_CARD_NAME_FULL);
|
| + SetEditorTextfieldValue(base::ASCIIToUTF16("4111111111111111"),
|
| + autofill::CREDIT_CARD_NUMBER);
|
| + SetEditorTextfieldValue(base::ASCIIToUTF16("05/45"),
|
| + autofill::CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR);
|
|
|
| ResetEventObserver(DialogEvent::BACK_NAVIGATION);
|
|
|
| ClickOnDialogViewAndWait(DialogViewID::EDITOR_SAVE_BUTTON);
|
|
|
| - WaitForObservedEvent();
|
| + // Verifying the data is in the DB.
|
| + autofill::PersonalDataManager* personal_data_manager =
|
| + GetPaymentRequests(GetActiveWebContents())[0]->personal_data_manager();
|
| + EXPECT_EQ(1u, personal_data_manager->GetCreditCards().size());
|
| + autofill::CreditCard* credit_card =
|
| + personal_data_manager->GetCreditCards()[0];
|
| + EXPECT_EQ(5, credit_card->expiration_month());
|
| + EXPECT_EQ(2045, credit_card->expiration_year());
|
| + EXPECT_EQ(2045, credit_card->expiration_year());
|
| + EXPECT_EQ(base::ASCIIToUTF16("1111"), credit_card->LastFourDigits());
|
| + EXPECT_EQ(base::ASCIIToUTF16("Bob Jones"),
|
| + credit_card->GetRawInfo(autofill::CREDIT_CARD_NAME_FULL));
|
| +}
|
| +
|
| +IN_PROC_BROWSER_TEST_F(PaymentRequestCreditCardEditorTest,
|
| + EnteringInvalidData) {
|
| + InvokePaymentRequestUI();
|
| +
|
| + OpenPaymentMethodScreen();
|
| +
|
| + OpenCreditCardEditorScreen();
|
| +
|
| + SetEditorTextfieldValue(base::ASCIIToUTF16("Bob Jones"),
|
| + autofill::CREDIT_CARD_NAME_FULL);
|
| + SetEditorTextfieldValue(base::ASCIIToUTF16("41111111invalidcard"),
|
| + autofill::CREDIT_CARD_NUMBER);
|
| + SetEditorTextfieldValue(base::ASCIIToUTF16("05/45"),
|
| + autofill::CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR);
|
| +
|
| + ClickOnDialogViewAndWait(DialogViewID::EDITOR_SAVE_BUTTON);
|
| +
|
| + EXPECT_FALSE(IsEditorTextfieldInvalid(autofill::CREDIT_CARD_NAME_FULL));
|
| + EXPECT_TRUE(IsEditorTextfieldInvalid(autofill::CREDIT_CARD_NUMBER));
|
| + EXPECT_FALSE(
|
| + IsEditorTextfieldInvalid(autofill::CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR));
|
| +
|
| + autofill::PersonalDataManager* personal_data_manager =
|
| + GetPaymentRequests(GetActiveWebContents())[0]->personal_data_manager();
|
| + EXPECT_EQ(0u, personal_data_manager->GetCreditCards().size());
|
| }
|
|
|
| } // namespace payments
|
|
|