public void Update_UpdatesTheBillingAddressIfOptionIsSpecified()
{
var customer = gateway.Customer.Create().Target;
var creditCard = gateway.CreditCard.Create(new CreditCardRequest
{
CustomerId = customer.Id,
Number = SandboxValues.CreditCardNumber.VISA,
ExpirationDate = "05/2012",
BillingAddress = new CreditCardAddressRequest
{
StreetAddress = "123 Nigeria Ave"
}
}).Target;
var updateResult = gateway.PaymentMethod.Update(
creditCard.Token,
new PaymentMethodRequest
{
BillingAddress = new PaymentMethodAddressRequest
{
Region = "IL",
Options = new PaymentMethodAddressOptionsRequest
{
UpdateExisting = true
}
}
});
Assert.IsTrue(updateResult.IsSuccess());
Assert.That(updateResult.Target, Is.InstanceOf(typeof(CreditCard)));
var updatedCreditCard = (CreditCard)updateResult.Target;
Assert.AreEqual("IL", updatedCreditCard.BillingAddress.Region);
Assert.AreEqual("123 Nigeria Ave", updatedCreditCard.BillingAddress.StreetAddress);
Assert.AreEqual(updatedCreditCard.BillingAddress.Id, creditCard.BillingAddress.Id);
}