diff options
author | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-21 04:09:58 +0000 |
---|---|---|
committer | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-21 04:09:58 +0000 |
commit | 66aaff10039f3dcd006985191799a13191ef91c9 (patch) | |
tree | aa598948e7fe97ea2fac7d34c1b1d12d2a54db5e /chrome/browser/autofill/fax_field_unittest.cc | |
parent | 5ef24a576fbf06a0bfd934de5707b83906d1a040 (diff) | |
download | chromium_src-66aaff10039f3dcd006985191799a13191ef91c9.zip chromium_src-66aaff10039f3dcd006985191799a13191ef91c9.tar.gz chromium_src-66aaff10039f3dcd006985191799a13191ef91c9.tar.bz2 |
AutoFill: Add a simple heuristic to match fax fields.
BUG=40062
TEST=FaxFieldTest
Review URL: http://codereview.chromium.org/1706005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45146 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/autofill/fax_field_unittest.cc')
-rw-r--r-- | chrome/browser/autofill/fax_field_unittest.cc | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/chrome/browser/autofill/fax_field_unittest.cc b/chrome/browser/autofill/fax_field_unittest.cc new file mode 100644 index 0000000..4cccac4 --- /dev/null +++ b/chrome/browser/autofill/fax_field_unittest.cc @@ -0,0 +1,59 @@ +// Copyright (c) 2010 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/scoped_ptr.h" +#include "base/scoped_vector.h" +#include "chrome/browser/autofill/fax_field.h" +#include "testing/gtest/include/gtest/gtest.h" +#include "webkit/glue/form_field.h" + +namespace { + +class FaxFieldTest : public testing::Test { + public: + FaxFieldTest() {} + + protected: + ScopedVector<AutoFillField> list_; + scoped_ptr<FaxField> field_; + FieldTypeMap field_type_map_; + std::vector<AutoFillField*>::const_iterator iter_; + + private: + DISALLOW_COPY_AND_ASSIGN(FaxFieldTest); +}; + +TEST_F(FaxFieldTest, Empty) { + list_.push_back(NULL); + iter_ = list_.begin(); + field_.reset(FaxField::Parse(&iter_)); + ASSERT_EQ(static_cast<FaxField*>(NULL), field_.get()); +} + +TEST_F(FaxFieldTest, NonParse) { + list_.push_back(new AutoFillField); + list_.push_back(NULL); + iter_ = list_.begin(); + field_.reset(FaxField::Parse(&iter_)); + ASSERT_EQ(static_cast<FaxField*>(NULL), field_.get()); +} + +TEST_F(FaxFieldTest, ParseOneLineFax) { + list_.push_back( + new AutoFillField(webkit_glue::FormField(ASCIIToUTF16("Fax"), + ASCIIToUTF16("faxnumber"), + string16(), + ASCIIToUTF16("text")), + ASCIIToUTF16("fax1"))); + list_.push_back(NULL); + iter_ = list_.begin(); + field_.reset(FaxField::Parse(&iter_)); + ASSERT_NE(static_cast<FaxField*>(NULL), field_.get()); + ASSERT_TRUE(field_->GetFieldInfo(&field_type_map_)); + ASSERT_TRUE( + field_type_map_.find(ASCIIToUTF16("fax1")) != field_type_map_.end()); + EXPECT_EQ(PHONE_FAX_WHOLE_NUMBER, field_type_map_[ASCIIToUTF16("fax1")]); +} + +} // namespace |