blob: 17d7555cc4435d3f4e358893e78fbc4edf77058d [file] [log] [blame]
// Copyright 2017 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 "components/payments/core/payment_address.h"
#include "base/strings/utf_string_conversions.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace payments {
// Tests that two addresses are not equal if their property values differ or
// one is missing a value present in the other, and equal otherwise.
TEST(PaymentRequestTest, PaymentAddressEquality) {
mojom::PaymentAddress address1;
mojom::PaymentAddress address2;
EXPECT_TRUE(address1.Equals(address2));
address1.country = "Madagascar";
EXPECT_FALSE(address1.Equals(address2));
address2.country = "Monaco";
EXPECT_FALSE(address1.Equals(address2));
address2.country = "Madagascar";
EXPECT_TRUE(address1.Equals(address2));
std::vector<std::string> address_line1;
address_line1.push_back("123 Main St.");
address_line1.push_back("Apartment B");
address1.address_line = address_line1;
EXPECT_FALSE(address1.Equals(address2));
std::vector<std::string> address_line2;
address_line2.push_back("123 Main St.");
address_line2.push_back("Apartment C");
address2.address_line = address_line2;
EXPECT_FALSE(address1.Equals(address2));
address2.address_line = address_line1;
EXPECT_TRUE(address1.Equals(address2));
address1.region = "Quebec";
EXPECT_FALSE(address1.Equals(address2));
address2.region = "Newfoundland and Labrador";
EXPECT_FALSE(address1.Equals(address2));
address2.region = "Quebec";
EXPECT_TRUE(address1.Equals(address2));
address1.city = "Timbuktu";
EXPECT_FALSE(address1.Equals(address2));
address2.city = "Timbuk 3";
EXPECT_FALSE(address1.Equals(address2));
address2.city = "Timbuktu";
EXPECT_TRUE(address1.Equals(address2));
address1.dependent_locality = "Manhattan";
EXPECT_FALSE(address1.Equals(address2));
address2.dependent_locality = "Queens";
EXPECT_FALSE(address1.Equals(address2));
address2.dependent_locality = "Manhattan";
EXPECT_TRUE(address1.Equals(address2));
address1.postal_code = "90210";
EXPECT_FALSE(address1.Equals(address2));
address2.postal_code = "89049";
EXPECT_FALSE(address1.Equals(address2));
address2.postal_code = "90210";
EXPECT_TRUE(address1.Equals(address2));
address1.sorting_code = "14390";
EXPECT_FALSE(address1.Equals(address2));
address2.sorting_code = "09341";
EXPECT_FALSE(address1.Equals(address2));
address2.sorting_code = "14390";
EXPECT_TRUE(address1.Equals(address2));
address1.organization = "The Willy Wonka Candy Company";
EXPECT_FALSE(address1.Equals(address2));
address2.organization = "Sears";
EXPECT_FALSE(address1.Equals(address2));
address2.organization = "The Willy Wonka Candy Company";
EXPECT_TRUE(address1.Equals(address2));
address1.recipient = "Veruca Salt";
EXPECT_FALSE(address1.Equals(address2));
address2.recipient = "Veronica Mars";
EXPECT_FALSE(address1.Equals(address2));
address2.recipient = "Veruca Salt";
EXPECT_TRUE(address1.Equals(address2));
address1.phone = "888-867-5309";
EXPECT_FALSE(address1.Equals(address2));
address2.phone = "800-984-3672";
EXPECT_FALSE(address1.Equals(address2));
address2.phone = "888-867-5309";
EXPECT_TRUE(address1.Equals(address2));
}
} // namespace payments