| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <algorithm> | 5 #include <algorithm> |
| 6 #include <vector> | 6 #include <vector> |
| 7 | 7 |
| 8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
| 9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| (...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 199 | 199 |
| 200 credit_card = new CreditCard; | 200 credit_card = new CreditCard; |
| 201 test::SetCreditCardInfo(credit_card, "", "", "", ""); | 201 test::SetCreditCardInfo(credit_card, "", "", "", ""); |
| 202 credit_card->set_guid("00000000-0000-0000-0000-000000000006"); | 202 credit_card->set_guid("00000000-0000-0000-0000-000000000006"); |
| 203 credit_cards->push_back(credit_card); | 203 credit_cards->push_back(credit_card); |
| 204 } | 204 } |
| 205 | 205 |
| 206 DISALLOW_COPY_AND_ASSIGN(TestPersonalDataManager); | 206 DISALLOW_COPY_AND_ASSIGN(TestPersonalDataManager); |
| 207 }; | 207 }; |
| 208 | 208 |
| 209 // Populates |form| with 3 fields and a field with autocomplete attribute. | |
| 210 void CreateTestFormWithAutocompleteAttribute(FormData* form) { | |
| 211 form->name = ASCIIToUTF16("UserSpecified"); | |
| 212 form->method = ASCIIToUTF16("POST"); | |
| 213 form->origin = GURL("http://myform.com/userspecified.html"); | |
| 214 form->action = GURL("http://myform.com/submit.html"); | |
| 215 form->user_submitted = true; | |
| 216 | |
| 217 FormFieldData field; | |
| 218 test::CreateTestFormField("First Name", "firstname", "", "text", &field); | |
| 219 form->fields.push_back(field); | |
| 220 test::CreateTestFormField("Middle Name", "middlename", "", "text", &field); | |
| 221 form->fields.push_back(field); | |
| 222 test::CreateTestFormField("Last Name", "lastname", "", "text", &field); | |
| 223 form->fields.push_back(field); | |
| 224 field.autocomplete_attribute="cc-type"; | |
| 225 test::CreateTestFormField("cc-type", "cc-type", "", "text", &field); | |
| 226 form->fields.push_back(field); | |
| 227 } | |
| 228 | |
| 229 // Populates |form| with data corresponding to a simple shipping options form. | |
| 230 void CreateTestShippingOptionsFormData(FormData* form) { | |
| 231 form->name = ASCIIToUTF16("Shipping Options"); | |
| 232 form->method = ASCIIToUTF16("POST"); | |
| 233 form->origin = GURL("http://myform.com/shipping.html"); | |
| 234 form->action = GURL("http://myform.com/submit.html"); | |
| 235 form->user_submitted = true; | |
| 236 | |
| 237 FormFieldData field; | |
| 238 test::CreateTestFormField("Shipping1", "option", "option1", "radio", &field); | |
| 239 form->fields.push_back(field); | |
| 240 test::CreateTestFormField("Shipping2", "option", "option2", "radio", &field); | |
| 241 form->fields.push_back(field); | |
| 242 } | |
| 243 | |
| 244 // Populates |form| with data corresponding to a simple credit card form. | 209 // Populates |form| with data corresponding to a simple credit card form. |
| 245 // Note that this actually appends fields to the form data, which can be useful | 210 // Note that this actually appends fields to the form data, which can be useful |
| 246 // for building up more complex test forms. | 211 // for building up more complex test forms. |
| 247 void CreateTestCreditCardFormData(FormData* form, | 212 void CreateTestCreditCardFormData(FormData* form, |
| 248 bool is_https, | 213 bool is_https, |
| 249 bool use_month_type) { | 214 bool use_month_type) { |
| 250 form->name = ASCIIToUTF16("MyForm"); | 215 form->name = ASCIIToUTF16("MyForm"); |
| 251 form->method = ASCIIToUTF16("POST"); | 216 form->method = ASCIIToUTF16("POST"); |
| 252 if (is_https) { | 217 if (is_https) { |
| 253 form->origin = GURL("https://myform.com/form.html"); | 218 form->origin = GURL("https://myform.com/form.html"); |
| (...skipping 14 matching lines...) Expand all Loading... |
| 268 "Expiration Date", "ccmonth", "", "month", &field); | 233 "Expiration Date", "ccmonth", "", "month", &field); |
| 269 form->fields.push_back(field); | 234 form->fields.push_back(field); |
| 270 } else { | 235 } else { |
| 271 test::CreateTestFormField("Expiration Date", "ccmonth", "", "text", &field); | 236 test::CreateTestFormField("Expiration Date", "ccmonth", "", "text", &field); |
| 272 form->fields.push_back(field); | 237 form->fields.push_back(field); |
| 273 test::CreateTestFormField("", "ccyear", "", "text", &field); | 238 test::CreateTestFormField("", "ccyear", "", "text", &field); |
| 274 form->fields.push_back(field); | 239 form->fields.push_back(field); |
| 275 } | 240 } |
| 276 } | 241 } |
| 277 | 242 |
| 278 void ExpectSuggestions(int page_id, | |
| 279 const std::vector<base::string16>& values, | |
| 280 const std::vector<base::string16>& labels, | |
| 281 const std::vector<base::string16>& icons, | |
| 282 const std::vector<int>& unique_ids, | |
| 283 int expected_page_id, | |
| 284 size_t expected_num_suggestions, | |
| 285 const base::string16 expected_values[], | |
| 286 const base::string16 expected_labels[], | |
| 287 const base::string16 expected_icons[], | |
| 288 const int expected_unique_ids[]) { | |
| 289 EXPECT_EQ(expected_page_id, page_id); | |
| 290 ASSERT_EQ(expected_num_suggestions, values.size()); | |
| 291 ASSERT_EQ(expected_num_suggestions, labels.size()); | |
| 292 ASSERT_EQ(expected_num_suggestions, icons.size()); | |
| 293 ASSERT_EQ(expected_num_suggestions, unique_ids.size()); | |
| 294 for (size_t i = 0; i < expected_num_suggestions; ++i) { | |
| 295 SCOPED_TRACE(base::StringPrintf("i: %" PRIuS, i)); | |
| 296 EXPECT_EQ(expected_values[i], values[i]); | |
| 297 EXPECT_EQ(expected_labels[i], labels[i]); | |
| 298 EXPECT_EQ(expected_icons[i], icons[i]); | |
| 299 EXPECT_EQ(expected_unique_ids[i], unique_ids[i]); | |
| 300 } | |
| 301 } | |
| 302 | |
| 303 void ExpectFilledField(const char* expected_label, | 243 void ExpectFilledField(const char* expected_label, |
| 304 const char* expected_name, | 244 const char* expected_name, |
| 305 const char* expected_value, | 245 const char* expected_value, |
| 306 const char* expected_form_control_type, | 246 const char* expected_form_control_type, |
| 307 const FormFieldData& field) { | 247 const FormFieldData& field) { |
| 308 SCOPED_TRACE(expected_label); | 248 SCOPED_TRACE(expected_label); |
| 309 EXPECT_EQ(UTF8ToUTF16(expected_label), field.label); | 249 EXPECT_EQ(UTF8ToUTF16(expected_label), field.label); |
| 310 EXPECT_EQ(UTF8ToUTF16(expected_name), field.name); | 250 EXPECT_EQ(UTF8ToUTF16(expected_name), field.name); |
| 311 EXPECT_EQ(UTF8ToUTF16(expected_value), field.value); | 251 EXPECT_EQ(UTF8ToUTF16(expected_value), field.value); |
| 312 EXPECT_EQ(expected_form_control_type, field.form_control_type); | 252 EXPECT_EQ(expected_form_control_type, field.form_control_type); |
| (...skipping 2695 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3008 test::CreateTestAddressFormData(&form); | 2948 test::CreateTestAddressFormData(&form); |
| 3009 std::vector<FormData> forms(1, form); | 2949 std::vector<FormData> forms(1, form); |
| 3010 FormsSeen(forms); | 2950 FormsSeen(forms); |
| 3011 const FormFieldData& field = form.fields[0]; | 2951 const FormFieldData& field = form.fields[0]; |
| 3012 GetAutofillSuggestions(form, field); // should call the delegate's OnQuery() | 2952 GetAutofillSuggestions(form, field); // should call the delegate's OnQuery() |
| 3013 | 2953 |
| 3014 EXPECT_TRUE(external_delegate_->on_query_seen()); | 2954 EXPECT_TRUE(external_delegate_->on_query_seen()); |
| 3015 } | 2955 } |
| 3016 | 2956 |
| 3017 } // namespace autofill | 2957 } // namespace autofill |
| OLD | NEW |