public void GetIdempotentKey_TwoSimilarInstances_ReturnsSameHashCode()
        {
            var customer1 = new AuthorizeCustomer
            {
                Address     = "address",
                City        = "city",
                Email       = "email",
                FirstName   = "first name",
                Identifier  = "identifier",
                LastName    = "last name",
                Phone       = "phone",
                PostalCode  = "postal code",
                PostalPlace = "postal place"
            };

            var customer2 = new AuthorizeCustomer
            {
                Address     = "address",
                City        = "city",
                Email       = "email",
                FirstName   = "first name",
                Identifier  = "identifier",
                LastName    = "last name",
                Phone       = "phone",
                PostalCode  = "postal code",
                PostalPlace = "postal place"
            };

            Assert.Equal(customer1.GetIdempotentKey(), customer2.GetIdempotentKey());
        }
        public void ToLoggableString_IdentifierIsNullOrWhite_DisplayAsIs(string identifier)
        {
            var customer = new AuthorizeCustomer {
                FirstName = Factory.GetString(), LastName = Factory.GetString(), Identifier = identifier
            };

            Assert.Equal($"Name '{customer.FirstName} {customer.LastName}', email: '{customer.Email}', identifier: '{identifier}'", customer.ToLoggableString());
        }
        public void ToLoggableString_CustomerWithShortIdentifier_DisplayNameEmailAndRawIdentifier()
        {
            var customer = new AuthorizeCustomer
            {
                FirstName  = Factory.GetString(),
                LastName   = Factory.GetString(),
                Email      = Factory.GetString(),
                Identifier = "000000"
            };

            Assert.Equal($"Name '{customer.FirstName} {customer.LastName}', email: '{customer.Email}', identifier: '000000'", customer.ToLoggableString());
        }