예제 #1
0
        public async void EfetuarPagamento_DeveRetornarItem()
        {
            // Arrange
            var pagamentoService          = new Mock <IPagamentoService>();
            var pagamentoDapperRepository = new Mock <IPagamentoDapperRepository>();
            var mapper            = new Mapper(configuration);
            var unitOfWork        = new Mock <IUnitOfWork>();
            var notificador       = new Mock <INotificador>();
            var pagamentoEsperado = new Pagamento(2, 5);
            var pagamentoInputDto = new PagamentoInputDTO
            {
                ValorPagamento   = 2,
                ValorPagoCliente = 5
            };

            pagamentoService.Setup(service => service.ReceberPagamento(2, 5))
            .ReturnsAsync(pagamentoEsperado);

            notificador.Setup(n => n.TemNotificacao()).Returns(false);

            var pagamentoAppService = new PagamentoAppService(pagamentoService.Object, pagamentoDapperRepository.Object,
                                                              mapper, unitOfWork.Object, notificador.Object);

            // Act
            var pagamentoDto = await pagamentoAppService.EfetuarPagamento(pagamentoInputDto);

            // Assert
            Assert.NotNull(pagamentoDto);
        }
예제 #2
0
        public async void BuscarPorId_DeveRetornarItem()
        {
            // Arrange
            var pagamentoService          = new Mock <IPagamentoService>();
            var pagamentoDapperRepository = new Mock <IPagamentoDapperRepository>();
            var mapper            = new Mapper(configuration);
            var unitOfWork        = new Mock <IUnitOfWork>();
            var notificador       = new Mock <INotificador>();
            var pagamentoEsperado = new Pagamento(2, 5);

            pagamentoDapperRepository.Setup(repository => repository.BuscarPorId(pagamentoEsperado.Id))
            .ReturnsAsync(pagamentoEsperado);

            var pagamentoAppService = new PagamentoAppService(pagamentoService.Object, pagamentoDapperRepository.Object,
                                                              mapper, unitOfWork.Object, notificador.Object);

            // Act
            var pagamentoDto = await pagamentoAppService.BuscarPorId(pagamentoEsperado.Id);

            // Assert
            Assert.NotNull(pagamentoDto);
        }
예제 #3
0
        public async void BuscarTodos_DeveRetornarItens()
        {
            // Arrange
            var pagamentoService          = new Mock <IPagamentoService>();
            var pagamentoDapperRepository = new Mock <IPagamentoDapperRepository>();
            var mapper              = new Mapper(configuration);
            var unitOfWork          = new Mock <IUnitOfWork>();
            var notificador         = new Mock <INotificador>();
            var pagamentosEsperados = ObterPagamentos();

            pagamentoDapperRepository.Setup(repository => repository.BuscarTodos())
            .ReturnsAsync(pagamentosEsperados);

            var pagamentoAppService = new PagamentoAppService(pagamentoService.Object, pagamentoDapperRepository.Object,
                                                              mapper, unitOfWork.Object, notificador.Object);

            // Act
            var listaPagamentoDto = await pagamentoAppService.BuscarTodos();

            // Assert
            Assert.True(listaPagamentoDto.Any());
        }