Esempio n. 1
0
        public async void ValidarObterProcessos()
        {
            // Arrange
            var parameters = new ObterProcessosParameter
            {
                PageNumber = 1,
                PageSize   = 30
            };

            var pagedList = PagedList <ProcessoDto> .Create(
                source : new List <ProcessoDto>()
            {
                new ProcessoDto
                {
                    Id = 1,
                    DataDistribuicao   = DateTimeOffset.Now,
                    Descricao          = "Descricao",
                    NumeroProcesso     = "PastaFisicaCliente",
                    PastaFisicaCliente = "",
                    SegredoJustica     = true,
                    SituacaoProcessoId = 1
                },
                new ProcessoDto
                {
                    Id = 2,
                    DataDistribuicao   = DateTimeOffset.Now.AddDays(1),
                    Descricao          = "Descricao2",
                    NumeroProcesso     = "PastaFisicaCliente2",
                    PastaFisicaCliente = "",
                    SegredoJustica     = false,
                    SituacaoProcessoId = 2
                }
            }.AsQueryable(),
                pageNumber : parameters.PageNumber,
                pageSize : parameters.PageSize);

            mockProcessoService
            .Setup(rs => rs.ObterProcessosAsync(It.IsNotNull <ObterProcessosQuery>()))
            .Returns(Task.FromResult(pagedList));

            mockApiResultHandler
            .Setup(rh => rh.Handle(sut, pagedList))
            .Returns(sut.Ok(pagedList));

            // Act
            IActionResult actionResult = await sut.ObterProcessosAsync(new ObterProcessosQuery(), parameters);

            // Assert
            actionResult.Should().BeOfType <OkObjectResult>().Subject.Value.Should().BeEquivalentTo(pagedList);
        }
Esempio n. 2
0
        public Task <IActionResult> ObterProcessosAsync([FromBody] ObterProcessosQuery query, [FromQuery] ObterProcessosParameter parameters)
        {
            query.ConfigurarPaginacao(parameters.PageNumber, parameters.PageSize);

            return(this.ExecAndHandleAsync(
                       action: () => this.processoService.ObterProcessosAsync(query),
                       onSuccessActionResultHandler: (result) =>
            {
                this.EnsurePaginationMetadata(result, ObterProcessosRouteName);
                return this.Ok(result);
            }));
        }