Beispiel #1
0
        public void PaymentFromTinkoff_CreatingOfNewInstanceUseingCtorWithStringParameter_SuccessfullCreation(string[] parameter, PaymentByCardOnline result)
        {
            // arrange and act
            PaymentByCardOnline testPayment = new PaymentByCardOnline(parameter, true);

            // assert
            Assert.That(testPayment.PaymentStatus, Is.EqualTo(result.PaymentStatus));
            Assert.That(testPayment.DateAndTime, Is.EqualTo(result.DateAndTime));
            Assert.That(testPayment.PaymentNr, Is.EqualTo(result.PaymentNr));
            Assert.That(testPayment.PaymentRUR, Is.EqualTo(result.PaymentRUR));
            Assert.That(testPayment.Email, Is.EqualTo(result.Email));
            Assert.That(testPayment.Phone, Is.EqualTo(result.Phone));
            Assert.That(testPayment.Shop, Is.EqualTo(result.Shop));
        }
        /// <summary>
        /// Проверка, что в БД уже нет такого платежа
        /// </summary>
        /// <returns><c>true</c>, если есть такой номер платёжа в БД,
        /// <c>false</c> если номер платежа не найден в БД</returns>
        /// <param name="payment">Платёж</param>
        bool IsPaymentUploadedAlready(PaymentByCardOnline payment)
        {
            if (otherPaymentsFromDB == null || !otherPaymentsFromDB.Any())
            {
                using (var uow = UnitOfWorkFactory.CreateWithoutRoot()) {
                    otherPaymentsFromDB = PaymentsRepository.GetPaymentsByTwoMonths(uow, payment.DateAndTime);
                }
            }

            return(otherPaymentsFromDB.Any(
                       x =>
                       x.Number == payment.PaymentNr &&
                       x.Sum == payment.PaymentRUR &&
                       x.Date == payment.DateAndTime));
        }