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

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

Issue 63053003: Ask libaddressinput for address components to use in requestAutocomplete(). (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merge Created 6 years, 11 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 467bb0242ffec929e40e9c4f653c7c48b3b9ac22..cb32ae29514cbcadb0566bd77955fa779fd8abcc 100644
--- a/chrome/browser/ui/autofill/autofill_dialog_controller_unittest.cc
+++ b/chrome/browser/ui/autofill/autofill_dialog_controller_unittest.cc
@@ -304,6 +304,7 @@ class TestAutofillDialogController
using AutofillDialogControllerImpl::AccountChooserModelForTesting;
using AutofillDialogControllerImpl::OnDidLoadRiskFingerprintData;
using AutofillDialogControllerImpl::IsEditingExistingData;
+ using AutofillDialogControllerImpl::IsManuallyEditingSection;
using AutofillDialogControllerImpl::IsSubmitPausedOn;
using AutofillDialogControllerImpl::NOT_CHECKED;
using AutofillDialogControllerImpl::SignedInState;
@@ -553,6 +554,44 @@ class AutofillDialogControllerTest : public ChromeRenderViewHostTestHarness {
return static_cast<SuggestionsMenuModel*>(model);
}
+ void SubmitAndVerifyShippingAndBillingResults() {
+ // Test after setting use billing for shipping.
+ UseBillingForShipping();
+
+ controller()->OnAccept();
+
+ ASSERT_EQ(20U, form_structure()->field_count());
+ EXPECT_EQ(ADDRESS_HOME_COUNTRY,
+ form_structure()->field(11)->Type().GetStorableType());
+ EXPECT_EQ(ADDRESS_BILLING, form_structure()->field(11)->Type().group());
+ EXPECT_EQ(ADDRESS_HOME_COUNTRY,
+ form_structure()->field(18)->Type().GetStorableType());
+ EXPECT_EQ(ADDRESS_HOME, form_structure()->field(18)->Type().group());
+ base::string16 billing_country = form_structure()->field(11)->value;
+ EXPECT_EQ(2U, billing_country.size());
+ base::string16 shipping_country = form_structure()->field(18)->value;
+ EXPECT_EQ(2U, shipping_country.size());
+ EXPECT_FALSE(billing_country.empty());
+ EXPECT_FALSE(shipping_country.empty());
+ EXPECT_EQ(billing_country, shipping_country);
+
+ EXPECT_EQ(CREDIT_CARD_NAME,
+ form_structure()->field(1)->Type().GetStorableType());
+ base::string16 cc_name = form_structure()->field(1)->value;
+ EXPECT_EQ(NAME_FULL, form_structure()->field(6)->Type().GetStorableType());
+ EXPECT_EQ(NAME_BILLING, form_structure()->field(6)->Type().group());
+ base::string16 billing_name = form_structure()->field(6)->value;
+ EXPECT_EQ(NAME_FULL, form_structure()->field(13)->Type().GetStorableType());
+ EXPECT_EQ(NAME, form_structure()->field(13)->Type().group());
+ base::string16 shipping_name = form_structure()->field(13)->value;
+
+ EXPECT_FALSE(cc_name.empty());
+ EXPECT_FALSE(billing_name.empty());
+ EXPECT_FALSE(shipping_name.empty());
+ EXPECT_EQ(cc_name, billing_name);
+ EXPECT_EQ(cc_name, shipping_name);
+ }
+
TestAutofillDialogController* controller() { return controller_.get(); }
const FormStructure* form_structure() { return form_structure_; }
@@ -1095,45 +1134,35 @@ TEST_F(AutofillDialogControllerTest, DontUseBillingAsShipping) {
// Test selecting UseBillingForShipping.
TEST_F(AutofillDialogControllerTest, UseBillingAsShipping) {
SwitchToAutofill();
+
AutofillProfile full_profile(test::GetVerifiedProfile());
- AutofillProfile full_profile2(test::GetVerifiedProfile2());
- CreditCard credit_card(test::GetVerifiedCreditCard());
controller()->GetTestingManager()->AddTestingProfile(&full_profile);
+
+ AutofillProfile full_profile2(test::GetVerifiedProfile2());
controller()->GetTestingManager()->AddTestingProfile(&full_profile2);
+
+ CreditCard credit_card(test::GetVerifiedCreditCard());
controller()->GetTestingManager()->AddTestingCreditCard(&credit_card);
- // Test after setting use billing for shipping.
- UseBillingForShipping();
+ ASSERT_FALSE(controller()->IsManuallyEditingSection(SECTION_CC));
+ ASSERT_FALSE(controller()->IsManuallyEditingSection(SECTION_BILLING));
- controller()->OnAccept();
- ASSERT_EQ(20U, form_structure()->field_count());
- EXPECT_EQ(ADDRESS_HOME_STATE,
- form_structure()->field(9)->Type().GetStorableType());
- EXPECT_EQ(ADDRESS_BILLING, form_structure()->field(9)->Type().group());
- EXPECT_EQ(ADDRESS_HOME_STATE,
- form_structure()->field(16)->Type().GetStorableType());
- EXPECT_EQ(ADDRESS_HOME, form_structure()->field(16)->Type().group());
- base::string16 billing_state = form_structure()->field(9)->value;
- base::string16 shipping_state = form_structure()->field(16)->value;
- EXPECT_FALSE(billing_state.empty());
- EXPECT_FALSE(shipping_state.empty());
- EXPECT_EQ(billing_state, shipping_state);
+ SubmitAndVerifyShippingAndBillingResults();
+}
- EXPECT_EQ(CREDIT_CARD_NAME,
- form_structure()->field(1)->Type().GetStorableType());
- base::string16 cc_name = form_structure()->field(1)->value;
- EXPECT_EQ(NAME_FULL, form_structure()->field(6)->Type().GetStorableType());
- EXPECT_EQ(NAME_BILLING, form_structure()->field(6)->Type().group());
- base::string16 billing_name = form_structure()->field(6)->value;
- EXPECT_EQ(NAME_FULL, form_structure()->field(13)->Type().GetStorableType());
- EXPECT_EQ(NAME, form_structure()->field(13)->Type().group());
- base::string16 shipping_name = form_structure()->field(13)->value;
+TEST_F(AutofillDialogControllerTest, UseBillingAsShippingManualInput) {
+ SwitchToAutofill();
- EXPECT_FALSE(cc_name.empty());
- EXPECT_FALSE(billing_name.empty());
- EXPECT_FALSE(shipping_name.empty());
- EXPECT_EQ(cc_name, billing_name);
- EXPECT_EQ(cc_name, shipping_name);
+ ASSERT_TRUE(controller()->IsManuallyEditingSection(SECTION_CC));
+ ASSERT_TRUE(controller()->IsManuallyEditingSection(SECTION_BILLING));
+
+ CreditCard credit_card(test::GetVerifiedCreditCard());
+ FillInputs(SECTION_CC, credit_card);
+
+ AutofillProfile full_profile(test::GetVerifiedProfile());
+ FillInputs(SECTION_BILLING, full_profile);
+
+ SubmitAndVerifyShippingAndBillingResults();
}
// Tests that shipping and billing telephone fields are supported, and filled
« no previous file with comments | « chrome/browser/ui/autofill/autofill_dialog_controller_impl.cc ('k') | chrome/browser/ui/autofill/autofill_dialog_i18n_input.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698