1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "third_party/libaddressinput/chromium/addressinput_util.h"
6
7#include "testing/gtest/include/gtest/gtest.h"
8#include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_data.h"
9
10namespace autofill {
11namespace addressinput {
12
13using ::i18n::addressinput::AddressData;
14
15TEST(AddressinputUtilTest, AddressRequiresRegionCode) {
16  AddressData address;
17  EXPECT_FALSE(HasAllRequiredFields(address));
18}
19
20TEST(AddressinputUtilTest, UsRequiresState) {
21  AddressData address;
22  address.region_code = "US";
23  address.postal_code = "90291";
24  // Leave state empty.
25  address.locality = "Los Angeles";
26  address.address_line.push_back("340 Main St.");
27  EXPECT_FALSE(HasAllRequiredFields(address));
28}
29
30TEST(AddressinputUtilTest, CompleteAddressReturnsTrue) {
31  AddressData address;
32  address.region_code = "US";
33  address.postal_code = "90291";
34  address.administrative_area = "CA";
35  address.locality = "Los Angeles";
36  address.address_line.push_back("340 Main St.");
37  EXPECT_TRUE(HasAllRequiredFields(address));
38}
39
40}  // namespace addressinput
41}  // namespace autofill
42