public void Transferencia_transacoesBancarias_Conta_Debita_ValorNegativo()
        {
            RepositorioTransacaoBancaria.Limpar();
            var conta = new ContaCorrente();

            Assert.Throws <ArgumentException>(() => conta.Debita(-100));
        }
        public void Saque_transacoesBancarias_Saldo_Zerado()
        {
            RepositorioTransacaoBancaria.Limpar();
            ContaCorrente conta = new ContaCorrente();

            Assert.Throws <InvalidOperationException>(() => ServicoConta.ExecutarSaque(conta, 500));
        }
        public void Transferencia_transacoesBancarias_ContaEspecial_Credita_ValorNegativo()
        {
            RepositorioTransacaoBancaria.Limpar();
            ContaEspecial conta = new ContaEspecial();

            Assert.Throws <ArgumentException>(() => conta.Credita(-100));
        }
        public void Transferencia_transacoesBancarias_Conta_Bloqueada()
        {
            RepositorioTransacaoBancaria.Limpar();
            ContaCorrente conta        = new ContaCorrente();
            ContaCorrente contaDestino = new ContaCorrente();

            ServicoConta.Bloquear(conta);
            Assert.Throws <InvalidOperationException>(() => ServicoConta.ExecutarTransferencia(conta, contaDestino, 500));
        }
        public void EmitirExtratos()
        {
            RepositorioTransacaoBancaria.Limpar();
            ContaCorrente conta = new ContaCorrente();

            RepositorioTransacaoBancaria.Adicionar(new Deposito(conta, 10000));
            RepositorioTransacaoBancaria.Adicionar(new Saque(conta, 500));
            RepositorioTransacaoBancaria.Adicionar(new Saque(conta, 500));
            Assert.AreEqual(3, RepositorioTransacaoBancaria.EmiteExtrato(conta, 20).Count());
        }
        public void Deposito_transacoesBancarias()
        {
            RepositorioTransacaoBancaria.Limpar();
            ContaCorrente conta = new ContaCorrente();

            conta.Credita(1000);

            var d = ServicoConta.ExecutarDeposito(conta, 500);

            Assert.IsNotNull(d.Comprovante);
            Assert.AreEqual(1500, conta.Saldo);
        }
        public void Transferencia_transacoesBancarias_ContaEspecial_SemLimite()
        {
            RepositorioTransacaoBancaria.Limpar();
            ContaEspecial conta = new ContaEspecial();

            conta.LimiteCredito = 7000;

            conta.Credita(1000);

            ContaCorrente contaDestino = new ContaCorrente();

            Assert.Throws <InvalidOperationException>(() => ServicoConta.ExecutarTransferencia(conta, contaDestino, 90000));
        }
示例#8
0
        public void testar_saque_transacoesBancarias1()
        {
            RepositorioTransacaoBancaria.Limpar();
            ContaCorrente conta = new ContaCorrente();

            conta.Credita(1000);
            conta.Numero = 123;

            ServicoSaque servicoSaque = new ServicoSaque(conta, 500);

            Assert.AreEqual(1, RepositorioTransacaoBancaria.Listar().Count);

            Assert.IsNotNull(RepositorioTransacaoBancaria.Listar().Cast <Saque>().FirstOrDefault());
        }
        public void Transferencia_transacoesBancarias_ContaEspecial()
        {
            RepositorioTransacaoBancaria.Limpar();
            ContaEspecial conta = new ContaEspecial();

            conta.LimiteCredito = 7000;

            ContaCorrente contaDestino = new ContaCorrente();

            ServicoConta.ExecutarTransferencia(conta, contaDestino, 500);

            Assert.AreEqual(-500, conta.Saldo);
            Assert.AreEqual(500, contaDestino.Saldo);
        }
        public void Transferencia_transacoesBancarias()
        {
            RepositorioTransacaoBancaria.Limpar();
            ContaCorrente conta = new ContaCorrente();

            conta.Credita(1000);

            ContaCorrente contaDestino = new ContaCorrente();

            var transf = ServicoConta.ExecutarTransferencia(conta, contaDestino, 500);

            Assert.IsNotNull(transf.Comprovante);
            Assert.AreEqual(500, conta.Saldo);
            Assert.AreEqual(500, contaDestino.Saldo);
        }