public void DeveJogarParaOProximoDiaUtilCasoDomingo() { var leilaoDao = new Mock <LeilaoDaoFalso>(); var avaliador = new Avaliador(); var pagamentoDao = new Mock <IPagamentoDao>(); var relogio = new Mock <IRelogio>(); relogio.Setup(r => r.hoje()).Returns(new DateTime(2018, 3, 11)); var leilao1 = new Leilao("Playstation"); leilao1.naData(new DateTime(1999, 5, 5)); leilao1.propoe(new Lance(new Usuario("renan"), 500)); leilao1.propoe(new Lance(new Usuario("Felipe"), 600)); var listaDeLeiloes = new List <Leilao> { leilao1 }; leilaoDao.Setup(l => l.encerrados()).Returns(listaDeLeiloes); Pagamento pagamentoCapturado = null; pagamentoDao.Setup(p => p.Salvar(It.IsAny <Pagamento>())).Callback <Pagamento>(c => pagamentoCapturado = c); var gerador = new GeradorDePagamento(leilaoDao.Object, avaliador, pagamentoDao.Object, relogio.Object); gerador.gera(); Assert.AreEqual(DayOfWeek.Monday, pagamentoCapturado.data.DayOfWeek); }
public void DeveGerarPagamentoParaLeilaoEncerrado() { var leilaoDao = new Mock <LeilaoDaoFalso>(); var avaliador = new Avaliador(); var pagamentoDao = new Mock <IPagamentoDao>(); var leilao1 = new Leilao("Playstation"); leilao1.naData(new DateTime(1999, 5, 5)); leilao1.propoe(new Lance(new Usuario("renan"), 500)); leilao1.propoe(new Lance(new Usuario("Felipe"), 600)); var listaDeLeiloes = new List <Leilao> { leilao1 }; leilaoDao.Setup(l => l.encerrados()).Returns(listaDeLeiloes); Pagamento pagamentoCapturado = null; pagamentoDao.Setup(p => p.Salvar(It.IsAny <Pagamento>())).Callback <Pagamento>(c => pagamentoCapturado = c); var gerador = new GeradorDePagamento(leilaoDao.Object, avaliador, pagamentoDao.Object); gerador.gera(); Assert.AreEqual(600, pagamentoCapturado.valor); }
public void Should_lunch_for_next_util_day_if_tody_is_sunday() { //Given var leilaoDao = new Mock <LeilaoDaoFalso>(); var pagaemntoDao = new Mock <PagamentoDao>(); var relogio = new Mock <Relogio>(); Leilao leilao1 = new Leilao("Playstation"); leilao1.naData(new DateTime(1999, 5, 5)); //When leilao1.propoe(new Lance(new Usuario("Renan"), 500)); leilao1.propoe(new Lance(new Usuario("Felipe"), 600)); List <Leilao> listaDeLeiloes = new List <Leilao>(); listaDeLeiloes.Add(leilao1); relogio.Setup(r => r.Hoje()) .Returns(new DateTime(2017, 2, 19)); leilaoDao.Setup(l => l.Encerrados()) .Returns(listaDeLeiloes); Pagamento pagamentoCapiturado = null; pagaemntoDao.Setup(p => p.Salvar(It.IsAny <Pagamento>())) .Callback <Pagamento>(r => pagamentoCapiturado = r); GeradorDePagamento gerador = new GeradorDePagamento(leilaoDao.Object, new Avaliador(), pagaemntoDao.Object, relogio.Object); gerador.Gera(); //Then Assert.Equal(DayOfWeek.Sunday, relogio.Object.Hoje().DayOfWeek); Assert.Equal(DayOfWeek.Monday, pagamentoCapiturado.data.DayOfWeek); }
public void Should_generator_payment_for_throw_fineshed() { //Given var leilaoDao = new Mock <LeilaoDaoFalso>(); var avaliador = new Mock <Avaliador>(); var pagaemntoDao = new Mock <PagamentoDao>(); Leilao leilao1 = new Leilao("Playstation"); leilao1.naData(new DateTime(1999, 5, 5)); //When leilao1.propoe(new Lance(new Usuario("Renan"), 500)); leilao1.propoe(new Lance(new Usuario("Felipe"), 600)); List <Leilao> listaDeLeiloes = new List <Leilao>(); listaDeLeiloes.Add(leilao1); leilaoDao.Setup(l => l.Encerrados()) .Returns(listaDeLeiloes); avaliador.Setup(a => a.maiorValor) .Returns(600); Pagamento pagemntoCapturado = null; pagaemntoDao.Setup(p => p.Salvar(It.IsAny <Pagamento>())) .Callback <Pagamento>(r => pagemntoCapturado = r); GeradorDePagamento gerador = new GeradorDePagamento(leilaoDao.Object, new Avaliador(), pagaemntoDao.Object); gerador.Gera(); //Then Assert.NotNull(pagemntoCapturado); Assert.Equal(600, pagemntoCapturado.valor); }