public void testar_deposito() { var conta = new ContaCorrente(); conta.Numero = 123; conta.Credita(1000); var deposito = new Deposito(conta, 500); deposito.Executa(); var comprovante = deposito.Comprovante; RepositorioTransacaoBancaria.Adicionar(deposito); Assert.Contains(deposito, RepositorioTransacaoBancaria.Listar()); var recuperado = RepositorioTransacaoBancaria.Listar().Cast <Deposito>().FirstOrDefault(); List <Deposito> depositos = RepositorioTransacaoBancaria.Listar() .Where(t => t.GetType().Name == typeof(Deposito).Name) .Cast <Deposito>() .ToList(); Assert.AreEqual(deposito, recuperado); }
public void Deposito(ContaCorrente contaDestino, decimal valor) { if (contaDestino.Status.Equals(ContaCorrente.StatusConta.Ativa.ToString())) { TransacaoBancaria transacao = new Deposito(contaDestino, valor); ValidaSaldo(contaDestino, valor, "Deposito"); transacao.Executa(); } else { throw new Exception("Conta não está ativa"); } }
public static Deposito ExecutarDeposito(ContaCorrente conta, decimal valor) { Deposito deposito = null; if (conta.Ativa) { deposito = new Deposito(conta, valor); deposito.Executa(); RepositorioTransacaoBancaria.Adicionar(deposito); } else { throw new InvalidOperationException("Conta bloqueada ou saldo insuficiente!"); } return(deposito); }
public void ExistemPendenciasTest() { Agencia ag = Fabrica.CriaAgencia(); Cliente cliente = Fabrica.CriaCliente(true); int numConta = ag.CriarConta(new Cliente[] { cliente }); ContaSimples conta = (ContaSimples)ag.RetornaConta(numConta); Deposito deposito = new Deposito(conta, 100); deposito.Executa(); Assert.AreEqual(true, conta.ExistePendencias()); }
public static Deposito ExecutarDeposito(ContaCorrente conta, decimal valor) { Deposito deposito = null; if (conta.Ativa) { deposito = new Deposito(conta, valor); deposito.Executa(); RepositorioTransacaoBancaria.Adicionar(deposito); } else { throw new InvalidOperationException("Conta bloqueada ou saldo insuficiente!"); } return deposito; }
public void DepositoTest() { Agencia ag = Fabrica.CriaAgencia(); Cliente cliente = Fabrica.CriaCliente(false); int numConta = ag.CriarConta(new Cliente[] { cliente }); IConta conta = ag.RetornaConta(numConta); double saldoEsperado = conta.Saldo + 100; Deposito deposito = new Deposito(conta, 100); deposito.Executa(); Assert.AreEqual(saldoEsperado, conta.Saldo); }