public void Test_CardPreAuthorization_Update()
        {
            try
            {
                CardPreAuthorizationDTO cardPreAuthorization = this.GetJohnsCardPreAuthorization();
                CardPreAuthorizationPutDTO cardPreAuthorizationPut = new CardPreAuthorizationPutDTO();
                cardPreAuthorizationPut.Tag = cardPreAuthorization.Tag;
                cardPreAuthorizationPut.PaymentStatus = PaymentStatus.CANCELED;

                CardPreAuthorizationDTO resultCardPreAuthorization = this.Api.CardPreAuthorizations.Update(cardPreAuthorizationPut, cardPreAuthorization.Id);

                Assert.AreEqual(resultCardPreAuthorization.Status, PreAuthorizationStatus.SUCCEEDED);
                Assert.AreEqual(resultCardPreAuthorization.PaymentStatus, PaymentStatus.CANCELED);
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.Message);
            }
        }
 /// <summary>Updates pre-authorization object.</summary>
 /// <param name="cardPreAuthorization">PreAuthorization object to be updated.</param>
 /// <param name="cardPreAuthorizationId">PreAuthorization object identifier.</param>
 /// <returns>Card registration instance returned from API.</returns>
 public CardPreAuthorizationDTO Update(CardPreAuthorizationPutDTO cardPreAuthorization, String cardPreAuthorizationId)
 {
     return this.UpdateObject<CardPreAuthorizationDTO, CardPreAuthorizationPutDTO>(MethodKey.PreauthorizationSave, cardPreAuthorization, cardPreAuthorizationId);
 }