diff options
author | dhollowa@chromium.org <dhollowa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-13 02:58:20 +0000 |
---|---|---|
committer | dhollowa@chromium.org <dhollowa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-13 02:58:20 +0000 |
commit | 280356aaff018a2b33defe80d0c4c73c81883c44 (patch) | |
tree | b1dc5edc46757eb911d6112acf38284b7f306918 /chrome/browser/autofill/credit_card_unittest.cc | |
parent | a1aee38539cdd177ce3f034677f55327051e3763 (diff) | |
download | chromium_src-280356aaff018a2b33defe80d0c4c73c81883c44.zip chromium_src-280356aaff018a2b33defe80d0c4c73c81883c44.tar.gz chromium_src-280356aaff018a2b33defe80d0c4c73c81883c44.tar.bz2 |
Adding summary string generation for the AutoFill feature.
Includes a small modification to the generated resources, needed additional whitespace
in credit card summary. Added summary generation to autofill_profile.* and modified
summary generation in credit_card.* to match. credit_card.* modifications were largely
to use string16 instead of std::wstring.
Factored out common unit testing utilities into autofill_common_unittest.*, and added
unit tests for summary string generation for credit_card.* and autofill_profile.*.
BUG=35551
TEST=unit_tests --gtest_filter=AutoFillProfileTest.*:CreditCardTest.*
Review URL: http://codereview.chromium.org/606031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39002 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/autofill/credit_card_unittest.cc')
-rw-r--r-- | chrome/browser/autofill/credit_card_unittest.cc | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/chrome/browser/autofill/credit_card_unittest.cc b/chrome/browser/autofill/credit_card_unittest.cc new file mode 100644 index 0000000..7dab4ff --- /dev/null +++ b/chrome/browser/autofill/credit_card_unittest.cc @@ -0,0 +1,113 @@ +// 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/basictypes.h" +#include "chrome/browser/autofill/autofill_common_unittest.h" +#include "chrome/browser/autofill/credit_card.h" +#include "testing/gtest/include/gtest/gtest.h" + +namespace { + +// Unit tests for autofill |CreditCard| class. +class CreditCardTest : public testing::Test { + protected: + CreditCardTest() { + } + + private: + DISALLOW_COPY_AND_ASSIGN(CreditCardTest); +}; + +// Tests credit card summary string generation. This test simulates a variety +// of different possible summary strings. Variations occur based on the +// existence of credit card number, month, and year fields. +TEST_F(CreditCardTest, PreviewSummaryString) { + // Case 0: empty credit card. + CreditCard credit_card0(string16(), 0); + string16 summary0 = credit_card0.PreviewSummary(); + EXPECT_EQ(summary0, string16(ASCIIToUTF16(""))); + + // Case 00: Empty credit card with empty strings. + CreditCard credit_card00(string16(), 0); + autofill_unittest::SetCreditCardInfo( + &credit_card00, + "Corporate", + "John Dillinger", + "Visa", + "", + "", + "", + "123", + "Chicago", + "Indianapolis"); + string16 summary00 = credit_card00.PreviewSummary(); + EXPECT_EQ(summary00, string16(ASCIIToUTF16(""))); + + // Case 1: No credit card number. + CreditCard credit_card1(string16(), 0); + autofill_unittest::SetCreditCardInfo( + &credit_card1, + "Corporate", + "John Dillinger", + "Visa", + "", + "01", + "2010", + "123", + "Chicago", + "Indianapolis"); + string16 summary1 = credit_card1.PreviewSummary(); + EXPECT_EQ(summary1, string16(ASCIIToUTF16(""))); + + // Case 2: No month. + CreditCard credit_card2(string16(), 0); + autofill_unittest::SetCreditCardInfo( + &credit_card2, + "Corporate", + "John Dillinger", + "Visa", + "123456789012", + "", + "2010", + "123", + "Chicago", + "Indianapolis"); + string16 summary2 = credit_card2.PreviewSummary(); + EXPECT_EQ(summary2, string16(ASCIIToUTF16("************9012"))); + + // Case 3: No year. + CreditCard credit_card3(string16(), 0); + autofill_unittest::SetCreditCardInfo( + &credit_card3, + "Corporate", + "John Dillinger", + "Visa", + "123456789012", + "01", + "", + "123", + "Chicago", + "Indianapolis"); + string16 summary3 = credit_card3.PreviewSummary(); + EXPECT_EQ(summary3, string16(ASCIIToUTF16("************9012"))); + + // Case 4: Have everything. + CreditCard credit_card4(string16(), 0); + autofill_unittest::SetCreditCardInfo( + &credit_card4, + "Corporate", + "John Dillinger", + "Visa", + "123456789012", + "01", + "2010", + "123", + "Chicago", + "Indianapolis"); + string16 summary4 = credit_card4.PreviewSummary(); + EXPECT_EQ(summary4, string16(ASCIIToUTF16("************9012, Exp: 01/2010"))); +} + +} // namespace + |