public void Saque890()
        {
            CaixaEletronico objCaixa = new CaixaEletronico();

            saque = objCaixa.Sacar(890);
            Assert.AreEqual("Entregar 8 nota(s) de R$100,00, 1 nota(s) de R$50,00 e 2 nota(s) de R$20,00", saque);
        }
        public void Saque95()
        {
            CaixaEletronico objCaixa = new CaixaEletronico();

            saque = objCaixa.Sacar(95);
            Assert.AreEqual("Não há notas disponíveis para realizar este saque", saque);
        }
        public void Saque30()
        {
            CaixaEletronico objCaixa = new CaixaEletronico();

            saque = objCaixa.Sacar(30);
            Assert.AreEqual("Entregar 1 nota(s) de R$20,00 e 1 nota(s) de R$10,00", saque);
        }
        public void SaqueValor0()
        {
            CaixaEletronico objCaixa = new CaixaEletronico();

            saque = objCaixa.Sacar(0);
            Assert.AreEqual("Valor indisponível", saque);
        }
        public void SaqueNota50_1()
        {
            CaixaEletronico objCaixa = new CaixaEletronico();

            saque = objCaixa.Sacar(50);
            Assert.AreEqual("Entregar 1 nota(s) de R$50,00", saque);
        }
        static void Main(string[] args)
        {
            var caixaEletronico = new CaixaEletronico();

            while (true)
            {
                Console.Clear();
                Console.Write("/***************** Bem vindo ao Banco do TJMT *****************/");
                Console.Write("\n\n");
                Console.Write("Informe um valor para saque: ");

                decimal valorSaque = 0;

                if (!decimal.TryParse(Console.ReadLine(), out valorSaque))
                {
                    Console.Write("Valor Inválido");
                }
                else
                {
                    try
                    {
                        var cedulas = caixaEletronico.Sacar(valorSaque);
                        ImprimirCedulas(cedulas);
                    }
                    catch (Exception e)
                    {
                        Console.Write("Erro: " + e.Message);
                    }
                }

                Console.ReadKey();
            }
        }
Exemplo n.º 7
0
        public void Sacar_410_retorna_4x100_e_1x10()
        {
            int             valorSaque      = 410;
            CaixaEletronico caixaEletronico = new CaixaEletronico();
            Notas           notas           = caixaEletronico.Sacar(valorSaque);

            Assert.AreEqual(4, notas.NotasDe100);
            Assert.AreEqual(1, notas.NotasDe10);
        }
Exemplo n.º 8
0
        public void Sacar_350_retorna_3x100_e_1x50()
        {
            int             valorSaque      = 350;
            CaixaEletronico caixaEletronico = new CaixaEletronico();
            Notas           notas           = caixaEletronico.Sacar(valorSaque);

            Assert.AreEqual(3, notas.NotasDe100);
            Assert.AreEqual(1, notas.NotasDe50);
        }
Exemplo n.º 9
0
        public void Verificar_Quantidade_de_Notas()
        {
            int             valorSaque      = 250;
            CaixaEletronico caixaEletronico = new CaixaEletronico();
            Notas           notas           = caixaEletronico.Sacar(valorSaque);

            Assert.AreEqual(2, notas.NotasDe100);
            Assert.AreEqual(1, notas.NotasDe50);
        }
Exemplo n.º 10
0
        public void QuandoSacar50Reais_DeveEntregar1Notade50()
        {
            var caixaEletronico = new CaixaEletronico();

            var notas = caixaEletronico.Sacar(50);

            Assert.IsNotNull(notas);
            Assert.AreEqual(1, notas.Count);
            Assert.AreEqual(50, notas[0].Valor);
        }
Exemplo n.º 11
0
        public void QuandoSacar30Reais_DeveEntregar2Notas1De10e1De20()
        {
            var caixaEletronico = new CaixaEletronico();

            var notas = caixaEletronico.Sacar(30);

            Assert.IsNotNull(notas);
            Assert.AreEqual(2, notas.Count);
            Assert.IsTrue(notas.Any(n => n.Valor == 10));
            Assert.IsTrue(notas.Any(n => n.Valor == 20));
        }
Exemplo n.º 12
0
        public void QuandoSoliciaParaSacar10ReaisOCaixaDeveDevolverUmaCedulaDe10Reais()
        {
            var cedulas = _caixa.Sacar(10);

            Assert.Equal(1, cedulas.Count);
            Assert.Equal(10.00d, cedulas.Sum(celuda => celuda));
        }
Exemplo n.º 13
0
        public void QuandoSacarValorMenorQueAMenorNotaDisponivel_NaoDeveEntregarNotas()
        {
            var caixaEletronico = new CaixaEletronico();
            var menorNota       = caixaEletronico.MenorNotaDisponivel;

            for (int i = 0; i < menorNota.Valor; i++)
            {
                var notas = caixaEletronico.Sacar(i);

                Assert.IsNotNull(notas);
                Assert.AreEqual(0, notas.Count, $"Nota {i}");
            }
        }
Exemplo n.º 14
0
        public void Quando_sacar_um_valor_negativo_devera_lancar_exception()
        {
            Action act = () => _caixaEletronico.Sacar(-5M);

            Assert.Throws <InvalidOperationException>(act);
        }