| Index: components/autofill/core/common/form_field_data_unittest.cc
|
| diff --git a/components/autofill/core/common/form_field_data_unittest.cc b/components/autofill/core/common/form_field_data_unittest.cc
|
| index 0ea6086e00945182dcb6bdc735679f37958bcaf2..fce7ffe4ac12d384590c0ef2a8c9a28a918f6d6d 100644
|
| --- a/components/autofill/core/common/form_field_data_unittest.cc
|
| +++ b/components/autofill/core/common/form_field_data_unittest.cc
|
| @@ -40,4 +40,51 @@ TEST(FormFieldDataTest, SerializeAndDeserialize) {
|
| EXPECT_TRUE(actual.SameFieldAs(data));
|
| }
|
|
|
| +TEST(FormFieldDataTest, DeserializeVersion1) {
|
| + FormFieldData data;
|
| + data.label = base::ASCIIToUTF16("label");
|
| + data.name = base::ASCIIToUTF16("name");
|
| + data.value = base::ASCIIToUTF16("value");
|
| + data.form_control_type = "password";
|
| + data.autocomplete_attribute = "off";
|
| + data.max_length = 200;
|
| + data.is_autofilled = true;
|
| + data.is_checked = true;
|
| + data.is_checkable = true;
|
| + data.is_focusable = true;
|
| + data.should_autocomplete = false;
|
| + data.text_direction = base::i18n::RIGHT_TO_LEFT;
|
| + data.option_values.push_back(base::ASCIIToUTF16("First"));
|
| + data.option_values.push_back(base::ASCIIToUTF16("Second"));
|
| + data.option_contents.push_back(base::ASCIIToUTF16("First"));
|
| + data.option_contents.push_back(base::ASCIIToUTF16("Second"));
|
| +
|
| + Pickle pickle;
|
| + pickle.WriteInt(1);
|
| + pickle.WriteString16(data.label);
|
| + pickle.WriteString16(data.name);
|
| + pickle.WriteString16(data.value);
|
| + pickle.WriteString(data.form_control_type);
|
| + pickle.WriteString(data.autocomplete_attribute);
|
| + pickle.WriteSizeT(data.max_length);
|
| + pickle.WriteBool(data.is_autofilled);
|
| + pickle.WriteBool(data.is_checked);
|
| + pickle.WriteBool(data.is_checkable);
|
| + pickle.WriteBool(data.is_focusable);
|
| + pickle.WriteBool(data.should_autocomplete);
|
| + pickle.WriteInt(data.text_direction);
|
| + pickle.WriteInt(static_cast<int>(data.option_values.size()));
|
| + for (auto s: data.option_values)
|
| + pickle.WriteString16(s);
|
| + pickle.WriteInt(static_cast<int>(data.option_contents.size()));
|
| + for (auto s: data.option_contents)
|
| + pickle.WriteString16(s);
|
| +
|
| + PickleIterator iter(pickle);
|
| + FormFieldData actual;
|
| + EXPECT_TRUE(DeserializeFormFieldData(&iter, &actual));
|
| +
|
| + EXPECT_TRUE(actual.SameFieldAs(data));
|
| +}
|
| +
|
| } // namespace autofill
|
|
|