Beispiel #1
0
        public void Create(CreatePaymentDetailView view)
        {
            var paymentDetail = new PaymentDetail
            {
                BSB           = view.BSB,
                AccountName   = view.AccountName,
                AccountNumber = view.AccountNumber,
                Reference     = view.Reference,
                PaymentAmount = view.PaymentAmount
            };

            if (view.PaymentAmount <= 0)
            {
                throw new NextPayException("Invalid Payment Amount!");
            }
            if (string.IsNullOrEmpty(view.BSB))
            {
                throw new NextPayException("Invalid BSB!");
            }
            if (string.IsNullOrEmpty(view.Reference))
            {
                throw new NextPayException("Invalid Reference!");
            }
            if (string.IsNullOrEmpty(view.AccountName))
            {
                throw new NextPayException("Invalid Account Name!");
            }
            if (string.IsNullOrEmpty(view.AccountNumber) || !CheckCreditCard(view.AccountNumber))
            {
                throw new NextPayException("Invalid Account Number!");
            }

            _paymentDetailRepository.Add(paymentDetail);
        }
Beispiel #2
0
        public void CreateIncorrectBSBTest()
        {
            var view = new CreatePaymentDetailView
            {
                AccountName   = "AccountName",
                AccountNumber = "4111111111111111",
                BSB           = string.Empty,
                PaymentAmount = 500,
                Reference     = "Reference"
            };

            try
            {
                _paymentDetailService.Create(view);
            }
            catch (NextPayException ex)
            {
                if (ex.Message == "Invalid BSB!")
                {
                    Assert.IsTrue(true);
                    return;
                }
            }
            Assert.Fail();
        }
Beispiel #3
0
        public void CreateIncorrectAccountNumberTest()
        {
            var view = new CreatePaymentDetailView
            {
                AccountName   = "AccountName",
                AccountNumber = "5147SADG004213414803",
                BSB           = "BSB",
                PaymentAmount = 500,
                Reference     = "Reference"
            };

            try
            {
                _paymentDetailService.Create(view);
            }
            catch (NextPayException ex)
            {
                if (ex.Message == "Invalid Account Number!")
                {
                    Assert.IsTrue(true);
                    return;
                }
            }
            Assert.Fail();
        }
Beispiel #4
0
 public IActionResult Create([FromBody] CreatePaymentDetailView view)
 {
     try
     {
         _service.Create(view);
         return(Ok());
     }
     catch (NextPayException exception)
     {
         return(BadRequest(exception.Message));
     }
     catch (Exception)
     {
         return(BadRequest());
     }
 }
Beispiel #5
0
        public void CreateValidDataTest()
        {
            var view = new CreatePaymentDetailView
            {
                AccountName   = "AccountName",
                AccountNumber = "5147004213414803",
                BSB           = "BSB",
                PaymentAmount = 500,
                Reference     = "Reference"
            };

            try
            {
                _paymentDetailService.Create(view);
                Assert.IsTrue(true);
            }
            catch (NextPayException)
            {
                Assert.Fail();
            }
        }