示例#1
0
        public void ExistemPendenciasTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            Cliente cliente = Fabrica.CriaCliente(false);

            int numConta = ag.CriarConta(new Cliente[] { cliente });

            ContaEspecial conta = (ContaEspecial)ag.RetornaConta(numConta);

            Assert.AreEqual(false, conta.ExistePendencias());
        }
示例#2
0
        public void CriarContaTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            Cliente cliente = Fabrica.CriaCliente(true);

            int numConta = ag.CriarConta(new Cliente[] { cliente });

            IConta[] contas = RepositorioContas.Instance.RetornaContas(cliente);

            Assert.AreEqual(numConta, contas[0].NumeroConta);
        }
示例#3
0
        public void RetornaContaTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            Cliente cliente = Fabrica.CriaCliente(true);

            int numConta = ag.CriarConta(new Cliente[] { cliente });

            IConta conta = ag.RetornaConta(numConta);

            Assert.AreEqual(numConta, conta.NumeroConta);
        }
示例#4
0
        public void LimiteTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            PessoaJuridica cliente = (PessoaJuridica)Fabrica.CriaCliente(false);

            int numConta = ag.CriarConta(new Cliente[] { cliente });

            ContaEspecial conta = (ContaEspecial)ag.RetornaConta(numConta);

            double limiteEsperado = cliente.Receita * 0.75;

            Assert.AreEqual(limiteEsperado, conta.Limite);
        }
示例#5
0
        public void FecharContaTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            Cliente cliente = Fabrica.CriaCliente(true);

            int numConta = ag.CriarConta(new Cliente[] { cliente });

            ag.FecharConta(numConta);

            IConta conta = ag.RetornaConta(numConta);

            Assert.AreEqual(StatusConta.Fechada, conta.Status);
        }
        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 void CreditaValorTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            Cliente cliente = Fabrica.CriaCliente(true);

            int numConta = ag.CriarConta(new Cliente[] { cliente });

            ContaSimples conta = (ContaSimples)ag.RetornaConta(numConta);

            double saldoEsperado = conta.Saldo + 100;

            conta.CreditaValor(100);

            Assert.AreEqual(saldoEsperado, conta.Saldo);
        }
示例#8
0
        public void SaldoSimplesTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            PessoaJuridica cliente = (PessoaJuridica)Fabrica.CriaCliente(false);

            int numConta = ag.CriarConta(new Cliente[] { cliente });

            ContaEspecial conta = (ContaEspecial)ag.RetornaConta(numConta);

            conta.CreditaValor(1000);

            double saldoEsperado = 1000;

            Assert.AreEqual(saldoEsperado, conta.SaldoSimples);
        }
示例#9
0
        public void LimiteDisponivelTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            PessoaJuridica cliente = (PessoaJuridica)Fabrica.CriaCliente(false);

            int numConta = ag.CriarConta(new Cliente[] { cliente });

            ContaEspecial conta = (ContaEspecial)ag.RetornaConta(numConta);

            double esperado = (cliente.Receita * 0.75) - 1000;

            conta.DebitaValor(1000);

            Assert.AreEqual(esperado, conta.LimiteDisponivel);
        }
示例#10
0
        public void DebitaValorTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            Cliente cliente = Fabrica.CriaCliente(false);

            int numConta = ag.CriarConta(new Cliente[] { cliente });

            ContaEspecial conta = (ContaEspecial)ag.RetornaConta(numConta);

            double saldoEsperado = conta.Saldo - 100;

            conta.DebitaValor(100);

            Assert.AreEqual(saldoEsperado, conta.Saldo);
        }
示例#11
0
        public void SaqueTest()
        {
            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;

            Saque saque = new Saque(conta, 100);

            saque.Executa();

            Assert.AreEqual(saldoEsperado, conta.Saldo);
        }
示例#12
0
        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);
        }
示例#13
0
        public void RetornaContasTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            Cliente cliente1 = Fabrica.CriaCliente(true);
            Cliente cliente2 = Fabrica.CriaCliente(false);

            int numConta1 = ag.CriarConta(new Cliente[] { cliente1 });
            int numConta2 = ag.CriarConta(new Cliente[] { cliente2 });

            IConta[] contas = ag.RetornaContas();

            int length = (from c in contas
                          where c.NumeroConta == numConta1 ||
                          c.NumeroConta == numConta2
                          select c).Count();


            Assert.AreEqual(2, length);
        }
示例#14
0
        public void TranferenciaTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            Cliente cliente = Fabrica.CriaCliente(false);

            int numConta1 = ag.CriarConta(new Cliente[] { cliente });
            int numConta2 = ag.CriarConta(new Cliente[] { cliente });

            IConta conta1 = ag.RetornaConta(numConta1);
            IConta conta2 = ag.RetornaConta(numConta2);

            double saldoEsperado1 = conta1.Saldo - 100;

            Transferencia transferencia = new Transferencia(conta1, conta2, 100);

            transferencia.Executa();

            Assert.AreEqual(saldoEsperado1, conta1.Saldo);
        }
        public void DebitaValorTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            Cliente cliente = Fabrica.CriaCliente(true);

            int numConta = ag.CriarConta(new Cliente[] { cliente });

            ContaSimples conta = (ContaSimples)ag.RetornaConta(numConta);

            double saldoEsperado = conta.Saldo - 100;

            try
            {
                conta.DebitaValor(100);
            }
            catch (System.Exception ex)
            {
                Assert.IsInstanceOf <OperacaoNaoEfetuadaEx>(ex);
            }
        }
示例#16
0
        public void ExtratoTest()
        {
            Agencia ag = Fabrica.CriaAgencia();

            Cliente cliente = Fabrica.CriaCliente(false);

            int numConta = ag.CriarConta(new Cliente[] { cliente });

            IConta conta = ag.RetornaConta(numConta);


            Saque saque = new Saque(conta, 100);

            saque.Executa();

            Extrato extrato = new Extrato(conta, DateTime.Now.AddDays(-1), DateTime.Now.AddDays(1));

            extrato.Executa();

            Assert.AreEqual(saque.Data, extrato.Operacoes[0].Data);
        }