Esempio n. 1
0
        public void Devo_Conseguir_Receber()
        {
            Caixa caixa = new Caixa(100);

            var repositorioCaixaStub = new Mock <ICaixaRepositorio>();

            repositorioCaixaStub.Setup(r => r.ObterUltimoCaixaAberto()).Returns(caixa);
            repositorioCaixaStub.Setup(r => r.Salvar(caixa));

            DTORecebimentoCaixa dto = new DTORecebimentoCaixa();

            dto.ValorDinheiro      = 50;
            dto.ValorCartaoDebito  = 25;
            dto.ValorCartaoCredito = 25;
            dto.ValorReceber       = 90;
            dto.ValorTroco         = 10;

            IFachadaCaixa fachada = new FachadaCaixa(repositorioCaixaStub.Object);

            fachada.Receber(dto);

            repositorioCaixaStub.Verify(r => r.ObterUltimoCaixaAberto());
            repositorioCaixaStub.Verify(r => r.Salvar(caixa));

            Assert.AreEqual(140, caixa.SaldoDinheiro);
            Assert.AreEqual(25, caixa.SaldoCartaoCredito);
            Assert.AreEqual(25, caixa.SaldoCartaoDebito);
            Assert.AreEqual(190, caixa.SaldoGeral);
        }
Esempio n. 2
0
        public void Nao_Devo_Conseguir_Receber_Se_O_Valor_Restante_For_Maior_Que_Zero()
        {
            DTORecebimentoCaixa dto = new DTORecebimentoCaixa();

            dto.ValorRestante = 15;

            IFachadaCaixa fachada = new FachadaCaixa(null);

            fachada.Receber(dto);
        }
Esempio n. 3
0
        public void Nao_Devo_Conseguir_Receber_Se_Nao_Houver_Nenhum_Caixa_Aberto()
        {
            var repositorioCaixaStub = new Mock <ICaixaRepositorio>();

            repositorioCaixaStub.Setup(r => r.ObterUltimoCaixaAberto()).Returns <Caixa>(null);

            IFachadaCaixa fachada = new FachadaCaixa(repositorioCaixaStub.Object);

            DTORecebimentoCaixa dto = new DTORecebimentoCaixa();

            dto.ValorDinheiro = 100;
            dto.ValorReceber  = 100;

            fachada.Receber(dto);
        }
Esempio n. 4
0
        public void Nao_Devo_Conseguir_Receber_Se_O_Valor_Do_Troco_For_Maior_Que_O_Saldo_Em_Dinheiro_Do_Caixa()
        {
            Caixa caixa = new Caixa(100);

            var repositorioCaixaStub = new Mock <ICaixaRepositorio>();

            repositorioCaixaStub.Setup(r => r.ObterUltimoCaixaAberto()).Returns(caixa);

            DTORecebimentoCaixa dto = new DTORecebimentoCaixa();

            dto.ValorTroco = 120;

            IFachadaCaixa fachada = new FachadaCaixa(repositorioCaixaStub.Object);

            fachada.Receber(dto);
        }