Index: components/autofill/browser/phone_field_unittest.cc |
diff --git a/components/autofill/browser/phone_field_unittest.cc b/components/autofill/browser/phone_field_unittest.cc |
deleted file mode 100644 |
index 8db2a9017d209624b0d0182ffe4d99777994fee7..0000000000000000000000000000000000000000 |
--- a/components/autofill/browser/phone_field_unittest.cc |
+++ /dev/null |
@@ -1,230 +0,0 @@ |
-// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "base/memory/scoped_ptr.h" |
-#include "base/memory/scoped_vector.h" |
-#include "base/strings/utf_string_conversions.h" |
-#include "components/autofill/browser/autofill_field.h" |
-#include "components/autofill/browser/autofill_scanner.h" |
-#include "components/autofill/browser/phone_field.h" |
-#include "components/autofill/core/common/form_field_data.h" |
-#include "testing/gtest/include/gtest/gtest.h" |
- |
-namespace autofill { |
- |
-class PhoneFieldTest : public testing::Test { |
- public: |
- PhoneFieldTest() {} |
- |
- protected: |
- ScopedVector<const AutofillField> list_; |
- scoped_ptr<PhoneField> field_; |
- FieldTypeMap field_type_map_; |
- |
- // Downcast for tests. |
- static PhoneField* Parse(AutofillScanner* scanner) { |
- return static_cast<PhoneField*>(PhoneField::Parse(scanner)); |
- } |
- |
- private: |
- DISALLOW_COPY_AND_ASSIGN(PhoneFieldTest); |
-}; |
- |
-TEST_F(PhoneFieldTest, Empty) { |
- AutofillScanner scanner(list_.get()); |
- field_.reset(Parse(&scanner)); |
- ASSERT_EQ(static_cast<PhoneField*>(NULL), field_.get()); |
-} |
- |
-TEST_F(PhoneFieldTest, NonParse) { |
- list_.push_back(new AutofillField); |
- AutofillScanner scanner(list_.get()); |
- field_.reset(Parse(&scanner)); |
- ASSERT_EQ(static_cast<PhoneField*>(NULL), field_.get()); |
-} |
- |
-TEST_F(PhoneFieldTest, ParseOneLinePhone) { |
- FormFieldData field; |
- field.form_control_type = "text"; |
- |
- field.label = ASCIIToUTF16("Phone"); |
- field.name = ASCIIToUTF16("phone"); |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("phone1"))); |
- |
- AutofillScanner scanner(list_.get()); |
- field_.reset(Parse(&scanner)); |
- ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
- ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("phone1")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_WHOLE_NUMBER, field_type_map_[ASCIIToUTF16("phone1")]); |
-} |
- |
-TEST_F(PhoneFieldTest, ParseTwoLinePhone) { |
- FormFieldData field; |
- field.form_control_type = "text"; |
- |
- field.label = ASCIIToUTF16("Area Code"); |
- field.name = ASCIIToUTF16("area code"); |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("areacode1"))); |
- |
- field.label = ASCIIToUTF16("Phone"); |
- field.name = ASCIIToUTF16("phone"); |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("phone2"))); |
- |
- AutofillScanner scanner(list_.get()); |
- field_.reset(Parse(&scanner)); |
- ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
- ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("phone2")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("phone2")]); |
-} |
- |
-TEST_F(PhoneFieldTest, ThreePartPhoneNumber) { |
- // Phone in format <field> - <field> - <field> could be either |
- // <area code> - <prefix> - <suffix>, or |
- // <country code> - <area code> - <phone>. The only distinguishing feature is |
- // size: <prefix> is no bigger than 3 characters, and <suffix> is no bigger |
- // than 4. |
- FormFieldData field; |
- field.form_control_type = "text"; |
- |
- field.label = ASCIIToUTF16("Phone:"); |
- field.name = ASCIIToUTF16("dayphone1"); |
- field.max_length = 0; |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("areacode1"))); |
- |
- field.label = ASCIIToUTF16("-"); |
- field.name = ASCIIToUTF16("dayphone2"); |
- field.max_length = 3; |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("prefix2"))); |
- |
- field.label = ASCIIToUTF16("-"); |
- field.name = ASCIIToUTF16("dayphone3"); |
- field.max_length = 4; |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("suffix3"))); |
- |
- field.label = ASCIIToUTF16("ext.:"); |
- field.name = ASCIIToUTF16("dayphone4"); |
- field.max_length = 0; |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("ext4"))); |
- |
- AutofillScanner scanner(list_.get()); |
- field_.reset(Parse(&scanner)); |
- ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
- ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("prefix2")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("prefix2")]); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("suffix3")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("suffix3")]); |
- EXPECT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("ext4")) == field_type_map_.end()); |
-} |
- |
-// This scenario of explicitly labeled "prefix" and "suffix" phone numbers |
-// encountered in http://crbug.com/40694 with page |
-// https://www.wrapables.com/jsp/Signup.jsp. |
-TEST_F(PhoneFieldTest, ThreePartPhoneNumberPrefixSuffix) { |
- FormFieldData field; |
- field.form_control_type = "text"; |
- |
- field.label = ASCIIToUTF16("Phone:"); |
- field.name = ASCIIToUTF16("area"); |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("areacode1"))); |
- |
- field.label = string16(); |
- field.name = ASCIIToUTF16("prefix"); |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("prefix2"))); |
- |
- field.label = string16(); |
- field.name = ASCIIToUTF16("suffix"); |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("suffix3"))); |
- |
- AutofillScanner scanner(list_.get()); |
- field_.reset(Parse(&scanner)); |
- ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
- ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("areacode1")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("areacode1")]); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("prefix2")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("prefix2")]); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("suffix3")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("suffix3")]); |
-} |
- |
-TEST_F(PhoneFieldTest, ThreePartPhoneNumberPrefixSuffix2) { |
- FormFieldData field; |
- field.form_control_type = "text"; |
- |
- field.label = ASCIIToUTF16("("); |
- field.name = ASCIIToUTF16("phone1"); |
- field.max_length = 3; |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("phone1"))); |
- |
- field.label = ASCIIToUTF16(")"); |
- field.name = ASCIIToUTF16("phone2"); |
- field.max_length = 3; |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("phone2"))); |
- |
- field.label = string16(); |
- field.name = ASCIIToUTF16("phone3"); |
- field.max_length = 4; |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("phone3"))); |
- |
- AutofillScanner scanner(list_.get()); |
- field_.reset(Parse(&scanner)); |
- ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
- ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("phone1")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_CITY_CODE, field_type_map_[ASCIIToUTF16("phone1")]); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("phone2")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("phone2")]); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("phone3")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_NUMBER, field_type_map_[ASCIIToUTF16("phone3")]); |
-} |
- |
-TEST_F(PhoneFieldTest, CountryAndCityAndPhoneNumber) { |
- // Phone in format <country code>:3 - <city and number>:10 |
- // The |maxlength| is considered, otherwise it's too broad. |
- FormFieldData field; |
- field.form_control_type = "text"; |
- |
- field.label = ASCIIToUTF16("Phone Number"); |
- field.name = ASCIIToUTF16("CountryCode"); |
- field.max_length = 3; |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("country"))); |
- |
- field.label = ASCIIToUTF16("Phone Number"); |
- field.name = ASCIIToUTF16("PhoneNumber"); |
- field.max_length = 10; |
- list_.push_back(new AutofillField(field, ASCIIToUTF16("phone"))); |
- |
- AutofillScanner scanner(list_.get()); |
- field_.reset(Parse(&scanner)); |
- ASSERT_NE(static_cast<PhoneField*>(NULL), field_.get()); |
- ASSERT_TRUE(field_->ClassifyField(&field_type_map_)); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("country")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_COUNTRY_CODE, field_type_map_[ASCIIToUTF16("country")]); |
- ASSERT_TRUE( |
- field_type_map_.find(ASCIIToUTF16("phone")) != field_type_map_.end()); |
- EXPECT_EQ(PHONE_HOME_CITY_AND_NUMBER, field_type_map_[ASCIIToUTF16("phone")]); |
-} |
- |
-} // namespace autofill |