예제 #1
0
        public void Nao_Devo_Conseguir_Efetuar_Um_Reforco_Sem_Nenhum_Caixa_Aberto()
        {
            var repositorioCaixa = new Mock <ICaixaRepositorio>();

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

            IFachadaCaixa fachada = new FachadaCaixa(repositorioCaixa.Object);

            fachada.EfetuarReforco(100);
        }
예제 #2
0
        public void Devo_Conseguir_Efetuar_Um_Reforco()
        {
            var caixa = new Mock <Caixa>();

            caixa.Setup(c => c.EstaAberto).Returns(true);
            caixa.Setup(c => c.EfetuarReforco(100));

            var repositorioCaixa = new Mock <ICaixaRepositorio>();

            repositorioCaixa.Setup(r => r.ObterUltimoCaixaAberto())
            .Returns(caixa.Object);

            IFachadaCaixa fachada = new FachadaCaixa(repositorioCaixa.Object);

            Assert.IsTrue(fachada.EfetuarReforco(100));
            caixa.Verify(c => c.EfetuarReforco(100));
            repositorioCaixa.Verify(r => r.Salvar(caixa.Object));
        }