public void Sale_UsesShippingAddressFromVault()
{
Customer customer = gateway.Customer.Create(new CustomerRequest()).Target;
gateway.CreditCard.Create(new CreditCardRequest
{
CustomerId = customer.Id,
CVV = "123",
Number = "5105105105105100",
ExpirationDate = "05/12"
});
Address shippingAddress = gateway.Address.Create(customer.Id, new AddressRequest { FirstName = "Carl" }).Target;
TransactionRequest request = new TransactionRequest
{
Amount = SandboxValues.TransactionAmount.AUTHORIZE,
CustomerId = customer.Id,
ShippingAddressId = shippingAddress.Id
};
Result<Transaction> result = gateway.Transaction.Sale(request);
Assert.IsTrue(result.IsSuccess());
Transaction transaction = result.Target;
Assert.AreEqual(shippingAddress.Id, transaction.ShippingAddress.Id);
Assert.AreEqual("Carl", transaction.ShippingAddress.FirstName);
}