public void CheckPaymentValid_False_IfAccountNull()
        {
            var chapsPaymentValidator = new ChapsPaymentValidator();

            var     request = new MakePaymentRequest();
            Account account = null;

            var validationResult = chapsPaymentValidator.CheckPaymentValid(request, account);

            Assert.That(validationResult, Is.False);
        }
        public void CheckPaymentValid_False_IfAllowedSchemesBacs()
        {
            var chapsPaymentValidator = new ChapsPaymentValidator();

            var     request = new MakePaymentRequest();
            Account account = new Account {
                AllowedPaymentSchemes = AllowedPaymentSchemes.Bacs
            };

            var validationResult = chapsPaymentValidator.CheckPaymentValid(request, account);

            Assert.That(validationResult, Is.False);
        }
        public void CheckPaymentValid_True_IfAllowedSchemesChapsAndAccountStatusIsLive()
        {
            var chapsPaymentValidator = new ChapsPaymentValidator();

            var     request = new MakePaymentRequest();
            Account account = new Account
            {
                AllowedPaymentSchemes = AllowedPaymentSchemes.Chaps,
                Status = AccountStatus.Live
            };

            var validationResult = chapsPaymentValidator.CheckPaymentValid(request, account);

            Assert.That(validationResult, Is.True);
        }
        public void CheckPaymentValid_False_AndAccountStatusIsInboundPaymentsOnly()
        {
            var chapsPaymentValidator = new ChapsPaymentValidator();

            var     request = new MakePaymentRequest();
            Account account = new Account
            {
                AllowedPaymentSchemes = AllowedPaymentSchemes.Chaps,
                Status = AccountStatus.InboundPaymentsOnly
            };

            var validationResult = chapsPaymentValidator.CheckPaymentValid(request, account);

            Assert.That(validationResult, Is.False);
        }