public void DeberiaRestarBalanceAlRetirar()
        {
            //arrange
            var valorInicial  = 600.0;
            var valorARetirar = 50.0;
            var cuenta        = new CuentaBancaria(valorInicial);

            //act
            cuenta.Retirar(valorARetirar);

            //assert
            Assert.AreEqual(cuenta.Balance, valorInicial - valorARetirar);
        }
        public void DeberiaDeducirCuandoBalanceFinalEsMenorAlMinimo()
        {
            //arrange
            var valorInicial  = 500.0;
            var valorARetirar = 50.0;
            var cuenta        = new CuentaBancaria(valorInicial);

            //act
            cuenta.Retirar(valorARetirar);

            //assert
            Assert.AreEqual(cuenta.Balance, valorInicial - (valorARetirar + 100));
        }
Example #3
0
        public RetirarResponse Ejecutar(RetirarRequest request)
        {
            CuentaBancaria cuenta = _cuentaBancariaRepository.FindBy(t => t.Numero.Equals(request.NumeroCuenta)).FirstOrDefault();

            if (cuenta != null)
            {
                cuenta.Retirar(request.Valor);
                _cuentaBancariaRepository.Edit(cuenta);
                _unitOfWork.Commit();
                return(new RetirarResponse()
                {
                    Mensaje = $"Su nuevo saldo es {cuenta.Saldo}."
                });
            }
            else
            {
                return(new RetirarResponse()
                {
                    Mensaje = $"Número de Cuenta No Válido."
                });
            }
        }