public async void ValidarObterResponsaveis()
        {
            // Arrange
            var query = new ObterResponsaveisQuery();

            var parameters = new ObterResponsaveisParameter
            {
                PageNumber = 1,
                PageSize   = 30
            };

            var pagedList = PagedList <ResponsavelDto> .Create(
                source : new List <ResponsavelDto>()
            {
                new ResponsavelDto
                {
                    Id    = 1,
                    Nome  = "Nome1",
                    Cpf   = "Cpf1",
                    Email = "Email1",
                    Foto  = new byte[1]
                },
                new ResponsavelDto
                {
                    Id    = 2,
                    Nome  = "Nome2",
                    Cpf   = "Cpf2",
                    Email = "Email2",
                    Foto  = new byte[1]
                }
            }.AsQueryable(),
                pageNumber : parameters.PageNumber,
                pageSize : parameters.PageSize);

            mockResponsavelService
            .Setup(rs => rs.ObterResponsaveisAsync(It.IsAny <ObterResponsaveisQuery>()))
            .Returns(Task.FromResult(pagedList));

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

            // Act
            IActionResult actionResult = await sut.ObterResponsaveisAsync(query, parameters);

            // Assert
            actionResult.Should().BeOfType <OkObjectResult>().Subject.Value.Should().BeEquivalentTo(pagedList);
        }
        public Task <IActionResult> ObterResponsaveisAsync([FromBody] ObterResponsaveisQuery query, [FromQuery] ObterResponsaveisParameter parameters)
        {
            query.ConfigurarPaginacao(parameters.PageNumber, parameters.PageSize);

            return(this.ExecAndHandleAsync(
                       action: () => this.responsavelService.ObterResponsaveisAsync(query),
                       onSuccessActionResultHandler: (result) =>
            {
                this.EnsurePaginationMetadata(result, "ObterResponsaveis");
                return this.Ok(result);
            }));
        }