Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            string cliente1 = "Alexandre";
            string cliente2 = "cesar";

            #region Testa Conta Corrente
            ContaCorrente contaCorrente1 = new ContaCorrente(1, 1, cliente1);
            ContaCorrente contaCorrente2 = new ContaCorrente(1, 2, cliente2);
            DepositarConta(contaCorrente1);
            DepositarConta(contaCorrente2);
            SacarConta(contaCorrente1);
            SacarConta(contaCorrente2);
            TrasferirEntreContas(contaCorrente1, contaCorrente2);
            #endregion


            ContaEspecial contaEspecial1 = new ContaEspecial(1, 1, cliente1);
            contaEspecial1.setLimite(100);
            ContaEspecial contaEspecial2 = new ContaEspecial(2, 2, cliente2);
            contaEspecial2.setLimite(500);
            DepositarConta(contaEspecial1);
            DepositarConta(contaEspecial2);
            SacarConta(contaEspecial1);
            SacarConta(contaEspecial2);
            TransferirEntreContas(contaEspecial2, contaCorrente1);
        }
Ejemplo n.º 2
0
        public void NaoDeveSacarContaNaoTemSaldoMesmoComLimite(decimal limite, decimal saldo, decimal saque, decimal valorEsperado)
        {
            var conta = new ContaEspecial(1234, limite);

            conta.Saldo = saldo;
            Assert.AreEqual(valorEsperado, conta.Sacar(saque));
        }
        public void Transferencia_transacoesBancarias_ContaEspecial_Debita_ValorNegativo()
        {
            RepositorioTransacaoBancaria.Limpar();
            ContaEspecial conta = new ContaEspecial();

            Assert.Throws <ArgumentException>(() => conta.Debita(-100));
        }
Ejemplo n.º 4
0
        static void Main(string[] args)
        {
            ContaCorrente contaCorrente1 = new ContaCorrente(1, 1, "Alexandre");
            ContaCorrente contaCorrente2 = new ContaCorrente(1, 2, "Cesar");

            ContaEspecial contaEspecial = new ContaEspecial(1, 2, "Cesar");
        }
Ejemplo n.º 5
0
        public void DeveSacarDinheiroCasoTenhaSaldoEDescontarATaxa(decimal limite, decimal saldo, decimal saque)
        {
            var conta = new ContaEspecial(1234, limite);

            conta.Saldo = saldo;
            Assert.AreEqual(saque, conta.Sacar(saque));
        }
        public void TesteDeDepositarContaEspecial()
        {
            var contaEspecial = new ContaEspecial(5000, 10000);

            contaEspecial.Depositar(500);
            Assert.AreEqual(5500, contaEspecial.Saldo);
        }
Ejemplo n.º 7
0
        static void Main(string[] args)
        {
            //Criando uma Conta Nova passando o nome e o valor inicail
            var conta1 = new ContaBancaria("Zé das couve", 0);

            //printando o acontecimento
            Console.WriteLine($"A nova conta de  {conta1.Nome} é o numero  {conta1.Numero}");

            //REaliso um deposito
            conta1.Deposito(100, Convert.ToDateTime("01-04-2020"), "Deposito em Cheque");
            //print o acontecimento
            Console.WriteLine($"Deposito de 100 com Saldo {conta1.getSaldo()}");

            //REaliso um deposito
            conta1.Deposito(500, Convert.ToDateTime("02-04-2020"), "Deposito em Dinheiro");
            //print o acontecimento
            Console.WriteLine($"Deposito de 500 com Saldo {conta1.getSaldo()}");

            conta1.Saque(300, Convert.ToDateTime("02-04-2020"), "Deposito em Dinheiro");
            //print o acontecimento
            Console.WriteLine($"Saque de 300 com Saldo {conta1.getSaldo()}");

            var contaEspecial = new ContaEspecial("João Bacana", 0);

            //print o acontecimento
            Console.WriteLine($"A nova conta de  {contaEspecial.Nome} é o numero  {contaEspecial.Numero} {contaEspecial.getSaldo()}");
        }
Ejemplo n.º 8
0
        static void Main(string[] args)
        {
            Console.WriteLine("### POO - Questão 3 ###");
            var ContaCorrente1 = new ContaCorrente(1230, 10);
            var ContaCorrente2 = new ContaCorrente(1231, 25);
            var ContaEspecial1 = new ContaEspecial(1234, 650);
            var ContaEspecial2 = new ContaEspecial(1232, 500);

            System.Console.WriteLine("*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*");
            System.Console.WriteLine("#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#");
            System.Console.WriteLine("*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*");
            System.Console.WriteLine("#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#");
            System.Console.WriteLine("██████╗░░█████╗░███╗░░██╗░█████╗░░█████╗░  ██████╗░██████╗░░░███╗░░");
            System.Console.WriteLine("██╔══██╗██╔══██╗████╗░██║██╔══██╗██╔══██╗  ██╔══██╗██╔══██╗░████║░░");
            System.Console.WriteLine("██████╦╝███████║██╔██╗██║██║░░╚═╝██║░░██║  ██║░░██║██████╦╝██╔██║░░");
            System.Console.WriteLine("██╔══██╗██╔══██║██║╚████║██║░░██╗██║░░██║  ██║░░██║██╔══██╗╚═╝██║░░");
            System.Console.WriteLine("██████╦╝██║░░██║██║░╚███║╚█████╔╝╚█████╔╝  ██████╔╝██████╦╝███████╗");
            System.Console.WriteLine("╚═════╝░╚═╝░░╚═╝╚═╝░░╚══╝░╚════╝░░╚════╝░  ╚═════╝░╚═════╝░╚══════╝");
            System.Console.WriteLine("#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#");
            System.Console.WriteLine("*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*");
            System.Console.WriteLine("#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#");
            System.Console.WriteLine("*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*");


            menu();

            while (true)
            {
                switch (Convert.ToInt32(Console.ReadLine()))
                {
                case 1:
                    SelecionarTipoDeConta();
                    break;

                case 2:
                    Extrato();
                    break;

                case 3:
                    Sacar();
                    break;

                case 4:
                    Depositar();
                    break;

                case 5:
                    Console.Clear();
                    menu();
                    break;

                default:
                    Environment.Exit(0);
                    break;
                }

                Console.WriteLine("Digite uma nova opção:");
            }
        }
Ejemplo n.º 9
0
        static void Main(string[] args)
        {
            ContaEspecial conta = new ContaEspecial(102030, "Beto Reis", 1000.00, 350.00);

            Console.WriteLine(conta.Saldo);

            conta.Saldo = 500.00;   // por causa do acesso "protected" não é possivel atribuir valor, pelo programa.
        }
Ejemplo n.º 10
0
        public void DeveDepositar(decimal limite, decimal saldo, decimal deposito, decimal valorEsperado)
        {
            var conta = new ContaEspecial(1234, limite);

            conta.Saldo = saldo;
            conta.Depositar(deposito);
            Assert.AreEqual(valorEsperado, conta.Saldo);
        }
        public void DeveDepositarCorretamente()
        {
            ContaBancaria conta = new ContaEspecial(100, 100);

            conta.Depositar(100);

            Assert.IsTrue(conta.GetSaldo() == 200);
        }
        public void NaoDeveSacarValorMaiorQueCredito()
        {
            ContaBancaria conta = new ContaEspecial(100, 100);

            conta.Sacar(250);

            Assert.IsTrue(conta.GetSaldo() == 100m);
        }
        public void DeveSacarValorCredito()
        {
            ContaBancaria conta = new ContaEspecial(100, 100);

            conta.Sacar(150);

            Assert.IsTrue(conta.GetSaldo() == -50m);
        }
        public void DeveSacarCorretamente()
        {
            ContaBancaria conta = new ContaEspecial(100, 100);

            conta.Sacar(50);

            Assert.IsTrue(conta.GetSaldo() == 50);
        }
Ejemplo n.º 15
0
        static void Main(string[] args)
        {
            string cliente1 = "Alexandre";
            string cliente2 = "cesar";

            #region Testa Conta Corrente
            ContaCorrente contaCorrente = new ContaCorrente(1, 1, cliente1);
            ContaEspecial contaEspecial = new ContaEspecial(1, 2, cliente2);
            contaCorrente.Deposito(10);
            #endregion
        }
Ejemplo n.º 16
0
        public void Deve_manter_saldo_atualizado_e_limite_quando_houver_operacao_de_saque()
        {
            var contaEspecial = new ContaEspecial(_limite);

            contaEspecial.Depositar(_saldo);

            contaEspecial.Sacar(_valorParaSaque);

            Assert.AreEqual(_saldoAposSaque, contaEspecial.Saldo);
            Assert.AreEqual(_limiteAposSaque, contaEspecial.Limite);
        }
        public void ExecutarContaEspecial()
        {
            var contaEspecial = new ContaEspecial("3214-01", 20, 5);

            Imprimir(contaEspecial);
            Console.WriteLine("Sacando 25");
            contaEspecial.Sacar(25);
            Imprimir(contaEspecial);
            Console.WriteLine($"Depositando 50");
            contaEspecial.Depositar(50);
            Imprimir(contaEspecial);
        }
Ejemplo n.º 18
0
        public void DeveSacarContaEspecial()
        {
            double saldoInicial = 100;
            double valorSaque   = 10;
            double limite       = 1000;

            var ce = new ContaEspecial(limite, saldoInicial, 5678);

            ce.Sacar(valorSaque);

            ce.Saldo.Should().Be(saldoInicial - valorSaque);
        }
Ejemplo n.º 19
0
        public void DeveDepositarContaEspecial()
        {
            double saldoInicial  = 100;
            double valorDeposito = 100;
            double limite        = 1000;

            var ce = new ContaEspecial(limite, saldoInicial, 5678);

            ce.Depositar(valorDeposito);

            ce.Saldo.Should().Be(saldoInicial + valorDeposito);
        }
Ejemplo n.º 20
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());
        }
Ejemplo n.º 21
0
        public static void CriarConta(List <ContaBancaria> listContas)
        {
            Console.Clear();
            System.Console.Write("Entre com o titular da conta: ");
            string titular = Console.ReadLine();

            System.Console.Write("Entre com o N° da agência: ");
            int agencia = Convert.ToInt32(Console.ReadLine());

            System.Console.Write("Entre com o N° da conta: ");
            int numConta = Convert.ToInt32(Console.ReadLine());

            bool escolheuConta = false;

            do
            {
                Console.Clear();
                System.Console.WriteLine("Entre com o tipo de conta:");
                System.Console.WriteLine("1 para Conta Corrente.");
                System.Console.WriteLine("2 para Conta Especial.");
                string tipoConta = Console.ReadLine();

                switch (tipoConta)
                {
                case "1":
                    ContaCorrente contaCorrente = new ContaCorrente(agencia, numConta, titular);
                    listContas.Add(contaCorrente);
                    escolheuConta = true;
                    break;

                case "2":
                    ContaEspecial contaEspecial = new ContaEspecial(agencia, numConta, titular);
                    System.Console.Write("Entre com o limite de cheque especial da conta: ");
                    int limite = Convert.ToInt32(Console.ReadLine());
                    contaEspecial.SetLimite(limite);

                    listContas.Add(contaEspecial);

                    escolheuConta = true;
                    break;

                default:
                    System.Console.WriteLine("Comando Inválido");
                    break;
                }
            } while (!escolheuConta);

            if (escolheuConta)
            {
                System.Console.WriteLine("Conta criada com sucesso.");
            }
        }
 public static ContaCorrente AbrirContaEspecial(Cliente cliente, Agencia agencia, decimal LimiteDeCredito)
 {
     var cc = new ContaEspecial()
     {
         Numero = Contas.Count > 0 ? Contas.Max(c => c.Numero) + 1 : 1,
         DataAbertura = DateTime.Now,
         Agencia = agencia,
         LimiteCredito = LimiteDeCredito,
         Cliente = cliente,
     };
     Contas.Add(cc);
     return cc;
 }
        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));
        }
        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);
        }
Ejemplo n.º 25
0
        public static void Main(string[] args)
        {
            Console.WriteLine("--------------------------------------------------------");
            ContaCorrente cc1 = new ContaCorrente(10.5, 100, 5678);

            Console.WriteLine("Valor inicial");
            cc1.MostraDados();
            cc1.Depositar(20);
            Console.WriteLine("Valor após depositar");
            cc1.MostraDados();
            cc1.Sacar(10);
            Console.WriteLine("Valor após sacar");
            cc1.MostraDados();

            Console.WriteLine("--------------------------------------------------------");
            ContaCorrente cc2 = new ContaCorrente(20, 50, 35678);

            Console.WriteLine("Valor inicial");
            cc2.MostraDados();
            cc2.Depositar(100);
            Console.WriteLine("Valor após depositar");
            cc2.MostraDados();
            cc2.Sacar(500);
            Console.WriteLine("Valor após sacar");
            cc2.MostraDados();

            Console.WriteLine("--------------------------------------------------------");
            ContaEspecial ce1 = new ContaEspecial(100, 1000, 4545);

            Console.WriteLine("Valor inicial");
            ce1.MostraDados();
            ce1.Depositar(100);
            Console.WriteLine("Valor após depositar");
            ce1.MostraDados();
            ce1.Sacar(500);
            Console.WriteLine("Valor após sacar");
            ce1.MostraDados();

            Console.WriteLine("--------------------------------------------------------");
            ContaEspecial ce2 = new ContaEspecial(15, 300, 65675);

            Console.WriteLine("Valor inicial");
            ce2.MostraDados();
            ce2.Depositar(10);
            Console.WriteLine("Valor após depositar");
            ce2.MostraDados();
            ce2.Sacar(1000);
            Console.WriteLine("Valor após sacar");
            ce2.MostraDados();
        }
Ejemplo n.º 26
0
        public static ContaCorrente AbrirContaEspecial(Cliente cliente, Agencia agencia, decimal LimiteDeCredito)
        {
            var cc = new ContaEspecial()
            {
                Numero        = Contas.Count > 0 ? Contas.Max(c => c.Numero) + 1 : 1,
                DataAbertura  = DateTime.Now,
                Agencia       = agencia,
                LimiteCredito = LimiteDeCredito,
                Cliente       = cliente,
            };

            Contas.Add(cc);
            return(cc);
        }
Ejemplo n.º 27
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);
        }
Ejemplo n.º 28
0
        static void Main(string[] args)
        {
            ContaCorrente contaCorrente1 = new ContaCorrente(1, 1, "Alexandre");
            ContaCorrente contaCorrente2 = new ContaCorrente(1, 2, "Cesar");

            DepositarConta(contaCorrente1);
            DepositarConta(contaCorrente2);
            SacarConta(contaCorrente1);
            SacarConta(contaCorrente2);

            ContaEspecial contaEspecial11 = new ContaEspecial(1, 2, "Cesar");

            DepositarConta(contaEspecial11);
            SacarConta(contaEspecial11);
        }
Ejemplo n.º 29
0
        public void DepositarValorEmContaEspecialEEmSeguidaSacarEConferir
            (double valorLimite, double valorDeposito, double valorSaque, double valorEsperado)
        {
            // Arrange
            ContaEspecial contaEspecial = new ContaEspecial
            {
                Limite = valorLimite
            };

            // Act
            contaEspecial.Depositar(valorDeposito);
            contaEspecial.Sacar(valorSaque);

            // Assert
            Assert.Equal(valorEsperado, contaEspecial.Saldo);
        }
        static void Main(string[] args)
        {
            ContaCorrente contaCorrente1 = new ContaCorrente(1, 1, "EIK");
            ContaCorrente contaCorrente2 = new ContaCorrente(1, 1, "HENRY");

            DepositarConta(contaCorrente1);
            DepositarConta(contaCorrente2);


            ContaEspecial contaEspecial1 = new ContaEspecial(1, 2, "HENRY");

            DepositarConta(contaEspecial1);
            SacarConta(contaEspecial1);

            /*Parei Aqui */
        }
Ejemplo n.º 31
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);
        }
        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));
        }
        public void Transferencia_transacoesBancarias_ContaEspecial_Debita_ValorNegativo()
        {
            RepositorioTransacaoBancaria.Limpar();
            ContaEspecial conta = new ContaEspecial();

            Assert.Throws<ArgumentException>(() => conta.Debita(-100));
        }
        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);
        }