diff options
author | isherman@chromium.org <isherman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-18 20:04:00 +0000 |
---|---|---|
committer | isherman@chromium.org <isherman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-18 20:04:00 +0000 |
commit | c13014b1b5e1a8a5a6faef68ee9ad3ec123424a8 (patch) | |
tree | b43d569622ae01e69239d03d604dcf064794fe5d /chrome/browser/autofill/phone_number.cc | |
parent | c8c7b6361758f5ddf831c416d872772ada1199f6 (diff) | |
download | chromium_src-c13014b1b5e1a8a5a6faef68ee9ad3ec123424a8.zip chromium_src-c13014b1b5e1a8a5a6faef68ee9ad3ec123424a8.tar.gz chromium_src-c13014b1b5e1a8a5a6faef68ee9ad3ec123424a8.tar.bz2 |
Add per-field-type Autofill quality metrics.
BUG=none
TEST=unit_tests --gtest_filter=AutofillMetrics*
Review URL: http://codereview.chromium.org/6820062
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81987 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/autofill/phone_number.cc')
-rw-r--r-- | chrome/browser/autofill/phone_number.cc | 36 |
1 files changed, 14 insertions, 22 deletions
diff --git a/chrome/browser/autofill/phone_number.cc b/chrome/browser/autofill/phone_number.cc index 247b625..ff05da8 100644 --- a/chrome/browser/autofill/phone_number.cc +++ b/chrome/browser/autofill/phone_number.cc @@ -201,40 +201,32 @@ void PhoneNumber::set_whole_number(const string16& whole_number) { } bool PhoneNumber::IsNumber(const string16& text) const { - if (text.length() > number_.length()) - return false; - - return StartsWith(number_, text, false); + // TODO(isherman): This will need to be updated once we add support for + // international phone numbers. + const size_t kPhoneNumberPrefixLength = 3; + const size_t kPhoneNumberSuffixLength = 4; + return + (text == number_) || + (text.length() == kPhoneNumberPrefixLength && + StartsWith(number_, text, true)) || + (text.length() == kPhoneNumberSuffixLength && + EndsWith(number_, text, true)); } bool PhoneNumber::IsCityCode(const string16& text) const { - if (text.length() > city_code_.length()) - return false; - - return StartsWith(city_code_, text, false); + return text == city_code_; } bool PhoneNumber::IsCountryCode(const string16& text) const { - if (text.length() > country_code_.length()) - return false; - - return StartsWith(country_code_, text, false); + return text == country_code_; } bool PhoneNumber::IsCityAndNumber(const string16& text) const { - string16 city_and_number(CityAndNumber()); - if (text.length() > city_and_number.length()) - return false; - - return StartsWith(city_and_number, text, false); + return text == CityAndNumber(); } bool PhoneNumber::IsWholeNumber(const string16& text) const { - string16 whole_number(WholeNumber()); - if (text.length() > whole_number.length()) - return false; - - return StartsWith(whole_number, text, false); + return text == WholeNumber(); } bool PhoneNumber::Validate(const string16& number) const { |