public void GiftCertificatePaymentTypeIsGiftCertificate() { PaymentType expectedPaymentType = PaymentType.GiftCertificate; var giftCertificatePayment = new GiftCertificatePayment(); Assert.AreEqual(expectedPaymentType, giftCertificatePayment.PaymentType, "Incorrect PaymentType returned."); }
public GiftCertificate GetGiftCertificate(long giftCertificateId) { IGiftCertificateRepository giftCertificateRepository = new GiftCertificateRepository(); var giftCertificate = giftCertificateRepository.GetById(giftCertificateId); if (giftCertificate != null) { IUniqueItemRepository <GiftCertificatePayment> uniqueItemRepository = new GiftCertificatePaymentRepository(); GiftCertificatePayment giftCertificatePayment = null; try { giftCertificatePayment = uniqueItemRepository.GetById(giftCertificateId); } catch (ObjectNotFoundInPersistenceException <GiftCertificatePayment> ) { } giftCertificate.Amount = giftCertificatePayment == null ? 0 : giftCertificatePayment.Amount; if (giftCertificate.BalanceAmount > 0 && ((giftCertificate.ExpirationDate.HasValue && giftCertificate.ExpirationDate >= DateTime.Today) || !giftCertificate.ExpirationDate.HasValue)) { return(giftCertificate); } if (giftCertificate.ExpirationDate.HasValue && giftCertificate.ExpirationDate < DateTime.Today) { throw new ObjectDeactivatedException <GiftCertificate>(); } throw new InvalidOperationException( "There is no amount left in the given gift certificate, please use another mode to pay."); } throw new InvalidOperationException("The given gift certificate is not valid."); }