Exemple #1
0
        public async Task <ActionResult <BrowseCustomersQueryResponse> > BrowseCustomersAsync([FromQuery] int?page = 1, [FromQuery] int?size = 10)
        {
            var request = new BrowseCustomersQuery
            {
                Page = page.Value,
                Size = size.Value,
            };

            var response = await _messageBus.SendAsync(request);

            return(Ok(response));
        }
Exemple #2
0
 public Task <ObjectClientResponse <BrowseCustomersQueryResponse> > BrowseCustomersAsync(BrowseCustomersQuery request, HeaderData header)
 {
     return(Client.GetAsync <BrowseCustomersQuery, BrowseCustomersQueryResponse>(request, GetHeaders(header)));
 }
Exemple #3
0
        public async Task BrowseCustomers_ValidRequest_ReturnsResponse()
        {
            // Arrange

            var header = await GetDefaultHeaderDataAsync();

            var createRequests = new List <CreateCustomerCommand>
            {
                new CreateCustomerCommand
                {
                    FirstName = "Mary",
                    LastName  = "Smith",
                },

                new CreateCustomerCommand
                {
                    FirstName = "John",
                    LastName  = "McDonald",
                },

                new CreateCustomerCommand
                {
                    FirstName = "Rob",
                    LastName  = "McDonald",
                },

                new CreateCustomerCommand
                {
                    FirstName = "Markson",
                    LastName  = "McDonald",
                },

                new CreateCustomerCommand
                {
                    FirstName = "Jake",
                    LastName  = "McDonald",
                },

                new CreateCustomerCommand
                {
                    FirstName = "Mark",
                    LastName  = "McPhil",
                },

                new CreateCustomerCommand
                {
                    FirstName = "Susan",
                    LastName  = "McDonald",
                },
            };

            var createHttpResponses = await CreateCustomersAsync(createRequests);

            // Act

            var browseRequest = new BrowseCustomersQuery
            {
                Page = 2,
                Size = 3,
            };

            var browseHttpResponse = await Fixture.Api.Customers.BrowseCustomersAsync(browseRequest, header);

            // Assert

            var expectedRecordResponses = new List <CreateCustomerCommandResponse>
            {
                createHttpResponses[3].Data,
                createHttpResponses[4].Data,
                createHttpResponses[5].Data,
            };

            // TODO: VC: FIX

            // browseHttpResponse.Data.TotalRecords.Should().Be(createRequests.Count);

            // browseHttpResponse.Data.Records.Should().BeEquivalentTo(expectedRecordResponses);
        }