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

Unified Diff: third_party/libaddressinput/chromium/cpp/test/address_validator_test.cc

Issue 145553009: rAc: use libaddressinput to validate international addresses. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 6 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: third_party/libaddressinput/chromium/cpp/test/address_validator_test.cc
diff --git a/third_party/libaddressinput/chromium/cpp/test/address_validator_test.cc b/third_party/libaddressinput/chromium/cpp/test/address_validator_test.cc
index 258b488b215dcb59f63ea431f2d060b22f2c1e7d..1e530476762f85680411052d1db6bf87f64283f5 100644
--- a/third_party/libaddressinput/chromium/cpp/test/address_validator_test.cc
+++ b/third_party/libaddressinput/chromium/cpp/test/address_validator_test.cc
@@ -34,9 +34,7 @@ class AddressValidatorTest : public testing::Test, public LoadRulesDelegate {
public:
AddressValidatorTest()
: validator_(AddressValidator::Build(
- scoped_ptr<Downloader>(new FakeDownloader),
- scoped_ptr<Storage>(new FakeStorage),
- this)) {}
+ scoped_ptr<Downloader>(new FakeDownloader), &storage_, this)) {}
virtual ~AddressValidatorTest() {}
@@ -47,17 +45,50 @@ class AddressValidatorTest : public testing::Test, public LoadRulesDelegate {
// LoadRulesDelegate implementation.
virtual void OnAddressValidationRulesLoaded(const std::string& country_code,
bool success) {
+ EXPECT_TRUE(success);
}
+
+ FakeStorage storage_;
};
TEST_F(AddressValidatorTest, EmptyAddressNoFatalFailure) {
validator_->LoadRules("US");
+
+ AddressData address;
+ address.country_code = "US";
+
+ AddressProblems problems;
+ EXPECT_EQ(
+ AddressValidator::SUCCESS,
+ validator_->ValidateAddress(address, AddressProblemFilter(), &problems));
+}
+
+TEST_F(AddressValidatorTest, USZipCode) {
+ validator_->LoadRules("US");
+
AddressData address;
+ address.address_lines.push_back("340 Main St.");
+ address.locality = "Venice";
+ address.administrative_area = "CA";
+ address.postal_code = "12345";
address.country_code = "US";
+
AddressProblems problems;
EXPECT_EQ(
AddressValidator::SUCCESS,
validator_->ValidateAddress(address, AddressProblemFilter(), &problems));
+
+ ASSERT_EQ(1U, problems.size());
+ EXPECT_EQ(problems[0].field, AddressField::POSTAL_CODE);
+ EXPECT_EQ(problems[0].type, AddressProblem::MISMATCHING_VALUE);
+
+ problems.clear();
+
+ address.postal_code = "90291";
+ EXPECT_EQ(
+ AddressValidator::SUCCESS,
+ validator_->ValidateAddress(address, AddressProblemFilter(), &problems));
+ EXPECT_EQ(0U, problems.size());
}
} // namespace addressinput

Powered by Google App Engine
This is Rietveld 408576698