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

Side by Side Diff: chrome/common/form_field_data.h

Issue 11198048: [Autofill] Update the autocomplete types implementation to match the current HTML spec. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix a test expectation Created 8 years, 2 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef CHROME_COMMON_FORM_FIELD_DATA_H_ 5 #ifndef CHROME_COMMON_FORM_FIELD_DATA_H_
6 #define CHROME_COMMON_FORM_FIELD_DATA_H_ 6 #define CHROME_COMMON_FORM_FIELD_DATA_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/string16.h" 10 #include "base/string16.h"
11 11
12 // Stores information about a field in a form. 12 // Stores information about a field in a form.
13 struct FormFieldData { 13 struct FormFieldData {
14 FormFieldData(); 14 FormFieldData();
15 virtual ~FormFieldData(); 15 virtual ~FormFieldData();
16 16
17 // Equality tests for identity which does not include |value| or 17 // Equality tests for identity which does not include |value| or
18 // |is_autofilled|. 18 // |is_autofilled|.
19 // TODO(dhollowa): These operators need to be revised when we implement field 19 // TODO(dhollowa): These operators need to be revised when we implement field
20 // ids. 20 // ids.
21 bool operator==(const FormFieldData& field) const; 21 bool operator==(const FormFieldData& field) const;
22 bool operator!=(const FormFieldData& field) const; 22 bool operator!=(const FormFieldData& field) const;
23 // Comparsion operator exposed for STL map. Uses label, then name to sort. 23 // Comparsion operator exposed for STL map. Uses label, then name to sort.
24 bool operator<(const FormFieldData& field) const; 24 bool operator<(const FormFieldData& field) const;
25 25
26 string16 label; 26 string16 label;
27 string16 name; 27 string16 name;
28 string16 value; 28 string16 value;
29 string16 form_control_type; 29 string16 form_control_type;
30 string16 autocomplete_type; 30 string16 autocomplete_attribute;
Evan Stade 2012/10/19 20:36:47 why are these string16? if they're only allowed to
Ilya Sherman 2012/10/20 05:16:08 You're right, the only valid values for either the
31 size_t max_length; 31 size_t max_length;
32 bool is_autofilled; 32 bool is_autofilled;
33 bool is_focusable; 33 bool is_focusable;
34 bool should_autocomplete; 34 bool should_autocomplete;
35 35
36 // For the HTML snippet |<option value="US">United States</option>|, the 36 // For the HTML snippet |<option value="US">United States</option>|, the
37 // value is "US" and the contents are "United States". 37 // value is "US" and the contents are "United States".
38 std::vector<string16> option_values; 38 std::vector<string16> option_values;
39 std::vector<string16> option_contents; 39 std::vector<string16> option_contents;
40 }; 40 };
41 41
42 // So we can compare FormFieldDatas with EXPECT_EQ(). 42 // So we can compare FormFieldDatas with EXPECT_EQ().
43 std::ostream& operator<<(std::ostream& os, const FormFieldData& field); 43 std::ostream& operator<<(std::ostream& os, const FormFieldData& field);
44 44
45 // Prefer to use this macro in place of |EXPECT_EQ()| for comparing 45 // Prefer to use this macro in place of |EXPECT_EQ()| for comparing
46 // |FormFieldData|s in test code. 46 // |FormFieldData|s in test code.
47 #define EXPECT_FORM_FIELD_DATA_EQUALS(expected, actual) \ 47 #define EXPECT_FORM_FIELD_DATA_EQUALS(expected, actual) \
48 do { \ 48 do { \
49 EXPECT_EQ(expected.label, actual.label); \ 49 EXPECT_EQ(expected.label, actual.label); \
50 EXPECT_EQ(expected.name, actual.name); \ 50 EXPECT_EQ(expected.name, actual.name); \
51 EXPECT_EQ(expected.value, actual.value); \ 51 EXPECT_EQ(expected.value, actual.value); \
52 EXPECT_EQ(expected.form_control_type, actual.form_control_type); \ 52 EXPECT_EQ(expected.form_control_type, actual.form_control_type); \
53 EXPECT_EQ(expected.autocomplete_type, actual.autocomplete_type); \ 53 EXPECT_EQ(expected.autocomplete_attribute, actual.autocomplete_attribute); \
54 EXPECT_EQ(expected.max_length, actual.max_length); \ 54 EXPECT_EQ(expected.max_length, actual.max_length); \
55 EXPECT_EQ(expected.is_autofilled, actual.is_autofilled); \ 55 EXPECT_EQ(expected.is_autofilled, actual.is_autofilled); \
56 } while (0) 56 } while (0)
57 57
58 #endif // CHROME_COMMON_FORM_FIELD_DATA_H_ 58 #endif // CHROME_COMMON_FORM_FIELD_DATA_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698