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

Unified Diff: components/autofill/core/browser/form_structure_unittest.cc

Issue 23033016: Remove autocheckout code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Even more deletes, and Ilya review. Created 7 years, 4 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: components/autofill/core/browser/form_structure_unittest.cc
diff --git a/components/autofill/core/browser/form_structure_unittest.cc b/components/autofill/core/browser/form_structure_unittest.cc
index 7d38165b4d1c440a03098cc5254ce6177963b41f..a66183ba78f635009dcb9b0a92f9c1c484316ba5 100644
--- a/components/autofill/core/browser/form_structure_unittest.cc
+++ b/components/autofill/core/browser/form_structure_unittest.cc
@@ -7,7 +7,6 @@
#include "base/memory/scoped_ptr.h"
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
-#include "components/autofill/content/browser/autocheckout_page_meta_data.h"
#include "components/autofill/core/browser/autofill_metrics.h"
#include "components/autofill/core/common/form_data.h"
#include "components/autofill/core/common/form_field_data.h"
@@ -92,11 +91,7 @@ TEST(FormStructureTest, FieldCount) {
// The render process sends all fields to browser including fields with
// autocomplete=off
- form_structure.reset(new FormStructure(form, std::string()));
- EXPECT_EQ(4U, form_structure->field_count());
-
- // We expect the same count when autocheckout is enabled.
- form_structure.reset(new FormStructure(form, "http://fake_url"));
+ form_structure.reset(new FormStructure(form));
EXPECT_EQ(4U, form_structure->field_count());
}
@@ -127,7 +122,7 @@ TEST(FormStructureTest, AutofillCount) {
form.fields.push_back(field);
// Only text and select fields that are heuristically matched are counted.
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_EQ(1U, form_structure->autofill_count());
@@ -138,25 +133,20 @@ TEST(FormStructureTest, AutofillCount) {
field.should_autocomplete = false;
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
// DetermineHeuristicTypes also assign field type for fields with
// autocomplete=off thus autofill_count includes them. This is a bug,
// and they should not be counted. See http://crbug.com/176432 for details.
// TODO(benquan): change it to EXPECT_EQ(1U, ... when the bug is fixed.
EXPECT_EQ(2U, form_structure->autofill_count());
-
- // All fields should be counted when Autocheckout is enabled.
- form_structure.reset(new FormStructure(form, "http://fake_url"));
- form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
- EXPECT_EQ(2U, form_structure->autofill_count());
}
TEST(FormStructureTest, SourceURL) {
FormData form;
form.origin = GURL("http://www.foo.com/");
form.method = ASCIIToUTF16("post");
- FormStructure form_structure(form, std::string());
+ FormStructure form_structure(form);
EXPECT_EQ(form.origin, form_structure.source_url());
}
@@ -169,11 +159,6 @@ TEST(FormStructureTest, IsAutofillable) {
form.method = ASCIIToUTF16("post");
FormFieldData field;
- // When autocheckout is enabled, we enable autofill even the form has
- // no fields
- form_structure.reset(new FormStructure(form, "http://fake_url"));
- form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
- EXPECT_TRUE(form_structure->IsAutofillable(true));
field.label = ASCIIToUTF16("username");
field.name = ASCIIToUTF16("username");
@@ -190,15 +175,10 @@ TEST(FormStructureTest, IsAutofillable) {
field.form_control_type = "submit";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_FALSE(form_structure->IsAutofillable(true));
- // We do not limit to three text fields when autocheckout is enabled.
- form_structure.reset(new FormStructure(form, "http://fake_url"));
- form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
- EXPECT_TRUE(form_structure->IsAutofillable(true));
-
// We now have three text fields, but only two auto-fillable fields.
field.label = ASCIIToUTF16("First Name");
field.name = ASCIIToUTF16("firstname");
@@ -210,7 +190,7 @@ TEST(FormStructureTest, IsAutofillable) {
field.form_control_type = "text";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_FALSE(form_structure->IsAutofillable(true));
@@ -220,14 +200,14 @@ TEST(FormStructureTest, IsAutofillable) {
field.form_control_type = "email";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
// The method must be 'post', though we can intentionally ignore this
// criterion for the sake of providing a helpful warning message to the user.
form.method = ASCIIToUTF16("get");
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_FALSE(form_structure->IsAutofillable(true));
EXPECT_TRUE(form_structure->IsAutofillable(false));
@@ -235,13 +215,13 @@ TEST(FormStructureTest, IsAutofillable) {
// The target cannot include http(s)://*/search...
form.method = ASCIIToUTF16("post");
form.action = GURL("http://google.com/search?q=hello");
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_FALSE(form_structure->IsAutofillable(true));
// But search can be in the URL.
form.action = GURL("http://search.com/?q=hello");
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
}
@@ -270,14 +250,9 @@ TEST(FormStructureTest, ShouldBeParsed) {
form.fields.push_back(checkable_field);
// We have only one text field, should not be parsed.
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_FALSE(form_structure->ShouldBeParsed(true));
- // The form should be parsed for autocheckout even it has less than three
- // text fields.
- form_structure.reset(new FormStructure(form, "http://fake_url"));
- EXPECT_TRUE(form_structure->ShouldBeParsed(true));
-
// We now have three text fields, though only two are auto-fillable.
field.label = ASCIIToUTF16("First Name");
field.name = ASCIIToUTF16("firstname");
@@ -289,25 +264,25 @@ TEST(FormStructureTest, ShouldBeParsed) {
field.form_control_type = "text";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_TRUE(form_structure->ShouldBeParsed(true));
// The method must be 'post', though we can intentionally ignore this
// criterion for the sake of providing a helpful warning message to the user.
form.method = ASCIIToUTF16("get");
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_FALSE(form_structure->IsAutofillable(true));
EXPECT_TRUE(form_structure->ShouldBeParsed(false));
// The target cannot include http(s)://*/search...
form.method = ASCIIToUTF16("post");
form.action = GURL("http://google.com/search?q=hello");
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_FALSE(form_structure->ShouldBeParsed(true));
// But search can be in the URL.
form.action = GURL("http://search.com/?q=hello");
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_TRUE(form_structure->ShouldBeParsed(true));
// The form need only have three fields, but at least one must be a text
@@ -329,17 +304,13 @@ TEST(FormStructureTest, ShouldBeParsed) {
field.form_control_type = "select-one";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_TRUE(form_structure->ShouldBeParsed(true));
form.fields[0].form_control_type = "select-one";
// Now, no text fields.
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_FALSE(form_structure->ShouldBeParsed(true));
-
- // It should be parsed when autocheckout is enabled.
- form_structure.reset(new FormStructure(form, "http://fake_url"));
- EXPECT_TRUE(form_structure->ShouldBeParsed(true));
}
TEST(FormStructureTest, HeuristicsContactInfo) {
@@ -383,7 +354,7 @@ TEST(FormStructureTest, HeuristicsContactInfo) {
field.form_control_type = "submit";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
@@ -434,7 +405,7 @@ TEST(FormStructureTest, HeuristicsAutocompleteAttribute) {
field.autocomplete_attribute = "email";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
@@ -475,7 +446,7 @@ TEST(FormStructureTest, HeuristicsAutocompleteAttributePhoneTypes) {
field.autocomplete_attribute = "tel-local-suffix";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
@@ -516,7 +487,7 @@ TEST(FormStructureTest, AutocompleteAttributeOverridesOtherHeuristics) {
field.name = ASCIIToUTF16("email");
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
EXPECT_TRUE(form_structure->ShouldBeCrowdsourced());
@@ -530,7 +501,7 @@ TEST(FormStructureTest, AutocompleteAttributeOverridesOtherHeuristics) {
// Now update the first form field to include an 'autocomplete' attribute.
form.fields.front().autocomplete_attribute = "x-other";
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_FALSE(form_structure->IsAutofillable(true));
EXPECT_FALSE(form_structure->ShouldBeCrowdsourced());
@@ -541,20 +512,6 @@ TEST(FormStructureTest, AutocompleteAttributeOverridesOtherHeuristics) {
EXPECT_EQ(UNKNOWN_TYPE, form_structure->field(0)->heuristic_type());
EXPECT_EQ(UNKNOWN_TYPE, form_structure->field(1)->heuristic_type());
EXPECT_EQ(UNKNOWN_TYPE, form_structure->field(2)->heuristic_type());
-
- // When Autocheckout is enabled, we should ignore 'autocomplete' attribute
- // when deciding to crowdsource.
- form_structure.reset(new FormStructure(form, "http://fake.url"));
- form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
- EXPECT_TRUE(form_structure->IsAutofillable(true));
- EXPECT_TRUE(form_structure->ShouldBeCrowdsourced());
-
- ASSERT_EQ(3U, form_structure->field_count());
- ASSERT_EQ(0U, form_structure->autofill_count());
-
- EXPECT_EQ(UNKNOWN_TYPE, form_structure->field(0)->heuristic_type());
- EXPECT_EQ(UNKNOWN_TYPE, form_structure->field(1)->heuristic_type());
- EXPECT_EQ(UNKNOWN_TYPE, form_structure->field(2)->heuristic_type());
}
// Verify that we can correctly process sections listed in the |autocomplete|
@@ -604,7 +561,7 @@ TEST(FormStructureTest, HeuristicsAutocompleteAttributeWithSections) {
field.autocomplete_attribute = "section-foo cc-number";
form.fields.push_back(field);
- FormStructure form_structure(form, std::string());
+ FormStructure form_structure(form);
form_structure.DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure.IsAutofillable(true));
@@ -649,7 +606,7 @@ TEST(FormStructureTest, HeuristicsAutocompleteAttributeWithSectionsDegenerate) {
field.autocomplete_attribute = "garbage billing email";
form.fields.push_back(field);
- FormStructure form_structure(form, std::string());
+ FormStructure form_structure(form);
form_structure.DetermineHeuristicTypes(TestAutofillMetrics());
// Expect the correct number of fields.
@@ -679,7 +636,7 @@ TEST(FormStructureTest, HeuristicsAutocompleteAttributeWithSectionsRepeated) {
field.autocomplete_attribute = "section-foo address-line1";
form.fields.push_back(field);
- FormStructure form_structure(form, std::string());
+ FormStructure form_structure(form);
form_structure.DetermineHeuristicTypes(TestAutofillMetrics());
// Expect the correct number of fields.
@@ -717,7 +674,7 @@ TEST(FormStructureTest, HeuristicsDontOverrideAutocompleteAttributeSections) {
field.autocomplete_attribute = "address-line1";
form.fields.push_back(field);
- FormStructure form_structure(form, std::string());
+ FormStructure form_structure(form);
form_structure.DetermineHeuristicTypes(TestAutofillMetrics());
// Expect the correct number of fields.
@@ -782,7 +739,7 @@ TEST(FormStructureTest, HeuristicsSample8) {
field.form_control_type = "submit";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(10U, form_structure->field_count());
@@ -850,7 +807,7 @@ TEST(FormStructureTest, HeuristicsSample6) {
field.form_control_type = "submit";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(7U, form_structure->field_count());
@@ -916,7 +873,7 @@ TEST(FormStructureTest, HeuristicsLabelsOnly) {
field.form_control_type = "submit";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(8U, form_structure->field_count());
@@ -974,7 +931,7 @@ TEST(FormStructureTest, HeuristicsCreditCardInfo) {
field.form_control_type = "submit";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(6U, form_structure->field_count());
@@ -1035,7 +992,7 @@ TEST(FormStructureTest, HeuristicsCreditCardInfoWithUnknownCardField) {
field.form_control_type = "submit";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(7U, form_structure->field_count());
@@ -1083,7 +1040,7 @@ TEST(FormStructureTest, ThreeAddressLines) {
field.name = ASCIIToUTF16("city");
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(4U, form_structure->field_count());
@@ -1125,7 +1082,7 @@ TEST(FormStructureTest, BillingAndShippingAddresses) {
field.name = ASCIIToUTF16("billing.address.addressLine2");
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(4U, form_structure->field_count());
@@ -1166,7 +1123,7 @@ TEST(FormStructureTest, SurplusAddressLinesIgnored) {
field.name = ASCIIToUTF16("billing.address.addressLine4");
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
ASSERT_EQ(4U, form_structure->field_count());
ASSERT_EQ(2U, form_structure->autofill_count());
@@ -1210,7 +1167,7 @@ TEST(FormStructureTest, ThreeAddressLinesExpedia) {
field.name = ASCIIToUTF16("FOPIH_RgWebCC_0_IHAddress_adct");
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(4U, form_structure->field_count());
@@ -1249,7 +1206,7 @@ TEST(FormStructureTest, TwoAddressLinesEbay) {
field.name = ASCIIToUTF16("city");
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(3U, form_structure->field_count());
@@ -1283,7 +1240,7 @@ TEST(FormStructureTest, HeuristicsStateWithProvince) {
field.name = ASCIIToUTF16("State");
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(3U, form_structure->field_count());
@@ -1350,7 +1307,7 @@ TEST(FormStructureTest, HeuristicsWithBilling) {
field.name = ASCIIToUTF16("email$emailBox");
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(11U, form_structure->field_count());
@@ -1401,7 +1358,7 @@ TEST(FormStructureTest, ThreePartPhoneNumber) {
field.max_length = 0;
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
ASSERT_EQ(4U, form_structure->field_count());
@@ -1447,7 +1404,7 @@ TEST(FormStructureTest, HeuristicsInfernoCC) {
field.name = ASCIIToUTF16("expiration_year");
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
@@ -1500,7 +1457,7 @@ TEST(FormStructureTest, CVCCodeClash) {
field.name = ASCIIToUTF16("csc");
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
EXPECT_TRUE(form_structure->IsAutofillable(true));
@@ -1559,7 +1516,7 @@ TEST(FormStructureTest, EncodeQueryRequest) {
form.fields.push_back(checkable_field);
ScopedVector<FormStructure> forms;
- forms.push_back(new FormStructure(form, std::string()));
+ forms.push_back(new FormStructure(form));
std::vector<std::string> encoded_signatures;
std::string encoded_xml;
const char * const kSignature1 = "11337937696949187602";
@@ -1579,7 +1536,7 @@ TEST(FormStructureTest, EncodeQueryRequest) {
// Add the same form, only one will be encoded, so EncodeQueryRequest() should
// return the same data.
- forms.push_back(new FormStructure(form, std::string()));
+ forms.push_back(new FormStructure(form));
ASSERT_TRUE(FormStructure::EncodeQueryRequest(forms.get(),
&encoded_signatures,
&encoded_xml));
@@ -1593,7 +1550,7 @@ TEST(FormStructureTest, EncodeQueryRequest) {
form.fields.push_back(field);
}
- forms.push_back(new FormStructure(form, std::string()));
+ forms.push_back(new FormStructure(form));
ASSERT_TRUE(FormStructure::EncodeQueryRequest(forms.get(),
&encoded_signatures,
&encoded_xml));
@@ -1624,7 +1581,7 @@ TEST(FormStructureTest, EncodeQueryRequest) {
malformed_form.fields.push_back(field);
}
- forms.push_back(new FormStructure(malformed_form, std::string()));
+ forms.push_back(new FormStructure(malformed_form));
ASSERT_TRUE(FormStructure::EncodeQueryRequest(forms.get(),
&encoded_signatures,
&encoded_xml));
@@ -1635,37 +1592,12 @@ TEST(FormStructureTest, EncodeQueryRequest) {
// Check that we fail if there are only bad form(s).
ScopedVector<FormStructure> bad_forms;
- bad_forms.push_back(new FormStructure(malformed_form, std::string()));
+ bad_forms.push_back(new FormStructure(malformed_form));
EXPECT_FALSE(FormStructure::EncodeQueryRequest(bad_forms.get(),
&encoded_signatures,
&encoded_xml));
EXPECT_EQ(0U, encoded_signatures.size());
EXPECT_EQ("", encoded_xml);
-
- // Check the behaviour with autocheckout enabled.
- ScopedVector<FormStructure> checkable_forms;
- checkable_forms.push_back(
- new FormStructure(form, "https://www.sample1.com/query/path"));
-
- ASSERT_TRUE(FormStructure::EncodeQueryRequest(checkable_forms.get(),
- &encoded_signatures,
- &encoded_xml));
- const char * const kSignature3 = "7747357776717901584";
- const char * const kResponse3 =
- "<?xml version=\"1.0\" encoding=\"UTF-8\"?><autofillquery "
- "clientversion=\"6.1.1715.1442/en (GGLL)\" accepts=\"a,e\" "
- "urlprefixsignature=\"7648393911063090788\">"
- "<form signature=\"7747357776717901584\">"
- "<field signature=\"412125936\"/>"
- "<field signature=\"1917667676\"/><field signature=\"2226358947\"/><field"
- " signature=\"747221617\"/><field signature=\"4108155786\"/><field "
- "signature=\"3410250678\"/><field signature=\"509334676\"/><field "
- "signature=\"509334676\"/><field signature=\"509334676\"/><field "
- "signature=\"509334676\"/><field signature=\"509334676\"/></form>"
- "</autofillquery>";
- ASSERT_EQ(1U, encoded_signatures.size());
- EXPECT_EQ(kSignature3, encoded_signatures[0]);
- EXPECT_EQ(kResponse3, encoded_xml);
}
TEST(FormStructureTest, EncodeUploadRequest) {
@@ -1673,7 +1605,7 @@ TEST(FormStructureTest, EncodeUploadRequest) {
std::vector<ServerFieldTypeSet> possible_field_types;
FormData form;
form.method = ASCIIToUTF16("post");
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
FormFieldData field;
@@ -1721,7 +1653,7 @@ TEST(FormStructureTest, EncodeUploadRequest) {
possible_field_types.push_back(ServerFieldTypeSet());
possible_field_types.back().insert(ADDRESS_HOME_COUNTRY);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
ASSERT_EQ(form_structure->field_count(), possible_field_types.size());
for (size_t i = 0; i < form_structure->field_count(); ++i)
@@ -1779,7 +1711,7 @@ TEST(FormStructureTest, EncodeUploadRequest) {
possible_field_types.back().insert(ADDRESS_BILLING_LINE2);
}
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
ASSERT_EQ(form_structure->field_count(), possible_field_types.size());
for (size_t i = 0; i < form_structure->field_count(); ++i)
form_structure->field(i)->set_possible_types(possible_field_types[i]);
@@ -1818,7 +1750,7 @@ TEST(FormStructureTest, EncodeUploadRequest) {
possible_field_types.back().insert(ADDRESS_BILLING_LINE1);
possible_field_types.back().insert(ADDRESS_BILLING_LINE2);
}
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
ASSERT_EQ(form_structure->field_count(), possible_field_types.size());
for (size_t i = 0; i < form_structure->field_count(); ++i)
form_structure->field(i)->set_possible_types(possible_field_types[i]);
@@ -1831,7 +1763,7 @@ TEST(FormStructureTest, EncodeFieldAssignments) {
std::vector<ServerFieldTypeSet> possible_field_types;
FormData form;
form.method = ASCIIToUTF16("post");
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
form_structure->DetermineHeuristicTypes(TestAutofillMetrics());
FormFieldData field;
@@ -1879,7 +1811,7 @@ TEST(FormStructureTest, EncodeFieldAssignments) {
possible_field_types.push_back(ServerFieldTypeSet());
possible_field_types.back().insert(ADDRESS_HOME_COUNTRY);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
ASSERT_EQ(form_structure->field_count(), possible_field_types.size());
for (size_t i = 0; i < form_structure->field_count(); ++i)
@@ -1924,7 +1856,7 @@ TEST(FormStructureTest, EncodeFieldAssignments) {
possible_field_types.back().insert(ADDRESS_BILLING_LINE2);
}
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
ASSERT_EQ(form_structure->field_count(), possible_field_types.size());
for (size_t i = 0; i < form_structure->field_count(); ++i)
form_structure->field(i)->set_possible_types(possible_field_types[i]);
@@ -1973,7 +1905,7 @@ TEST(FormStructureTest, CheckDataPresence) {
field.name = ASCIIToUTF16("email");
form.fields.push_back(field);
- FormStructure form_structure(form, std::string());
+ FormStructure form_structure(form);
ServerFieldTypeSet unknown_type;
unknown_type.insert(UNKNOWN_TYPE);
@@ -2239,7 +2171,7 @@ TEST(FormStructureTest, CheckMultipleTypes) {
possible_field_types.push_back(ServerFieldTypeSet());
possible_field_types.back().insert(ADDRESS_HOME_LINE1);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
for (size_t i = 0; i < form_structure->field_count(); ++i)
form_structure->field(i)->set_possible_types(possible_field_types[i]);
@@ -2335,26 +2267,26 @@ TEST(FormStructureTest, CheckFormSignature) {
field.form_control_type = "password";
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_EQ(FormStructureTest::Hash64Bit(
std::string("://&&email&first")),
form_structure->FormSignature());
form.origin = GURL(std::string("http://www.facebook.com"));
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_EQ(FormStructureTest::Hash64Bit(
std::string("http://www.facebook.com&&email&first")),
form_structure->FormSignature());
form.action = GURL(std::string("https://login.facebook.com/path"));
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_EQ(FormStructureTest::Hash64Bit(
std::string("https://login.facebook.com&&email&first")),
form_structure->FormSignature());
form.name = ASCIIToUTF16("login_form");
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_EQ(FormStructureTest::Hash64Bit(
std::string("https://login.facebook.com&login_form&email&first")),
form_structure->FormSignature());
@@ -2372,7 +2304,7 @@ TEST(FormStructureTest, CheckFormSignature) {
field.label = ASCIIToUTF16("Random Field label3");
field.name = ASCIIToUTF16("12345random");
form.fields.push_back(field);
- form_structure.reset(new FormStructure(form, std::string()));
+ form_structure.reset(new FormStructure(form));
EXPECT_EQ(FormStructureTest::Hash64Bit(
std::string("https://login.facebook.com&login_form&email&first&"
"random1234&random&1random&random")),
@@ -2403,12 +2335,12 @@ TEST(FormStructureTest, ToFormData) {
field.form_control_type = "submit";
form.fields.push_back(field);
- EXPECT_EQ(form, FormStructure(form, std::string()).ToFormData());
+ EXPECT_EQ(form, FormStructure(form).ToFormData());
// Currently |FormStructure(form_data)ToFormData().user_submitted| is always
// false. This forces a future author that changes this to update this test.
form.user_submitted = true;
- EXPECT_NE(form, FormStructure(form, std::string()).ToFormData());
+ EXPECT_NE(form, FormStructure(form).ToFormData());
}
TEST(FormStructureTest, SkipFieldTest) {
@@ -2435,7 +2367,7 @@ TEST(FormStructureTest, SkipFieldTest) {
form.fields.push_back(field);
ScopedVector<FormStructure> forms;
- forms.push_back(new FormStructure(form, std::string()));
+ forms.push_back(new FormStructure(form));
std::vector<std::string> encoded_signatures;
std::string encoded_xml;
@@ -2451,16 +2383,6 @@ TEST(FormStructureTest, SkipFieldTest) {
ASSERT_EQ(1U, encoded_signatures.size());
EXPECT_EQ(kSignature, encoded_signatures[0]);
EXPECT_EQ(kResponse, encoded_xml);
-
- AutocheckoutPageMetaData page_meta_data;
- const char * const kServerResponse =
- "<autofillqueryresponse><field autofilltype=\"3\" />"
- "<field autofilltype=\"9\" /></autofillqueryresponse>";
- FormStructure::ParseQueryResponse(kServerResponse, forms.get(),
- &page_meta_data, TestAutofillMetrics());
- ASSERT_EQ(NAME_FIRST, forms[0]->field(0)->server_type());
- ASSERT_EQ(NO_SERVER_DATA, forms[0]->field(1)->server_type());
- ASSERT_EQ(EMAIL_ADDRESS, forms[0]->field(2)->server_type());
}
} // namespace autofill

Powered by Google App Engine
This is Rietveld 408576698