public async Task <ActionResult <ViewCustomerQueryResponse> > ViewCustomerAsync(Guid id) { var request = new ViewCustomerQuery { Id = id, }; var response = await _messageBus.SendAsync(request); return(Ok(response)); }
public async Task DeleteCustomer_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", }, }; var createHttpResponses = await CreateCustomersAsync(createRequests); // Act var id = createHttpResponses[1].Data.Id; var deleteRequest = new DeleteCustomerCommand { Id = id }; var deleteHttpResponse = await Fixture.Api.Customers.DeleteCustomerAsync(deleteRequest, header); // Assert deleteHttpResponse.StatusCode.Should().Be(HttpStatusCode.NoContent); var findRequest = new ViewCustomerQuery { Id = id }; var findHttpResponse = await Fixture.Api.Customers.ViewCustomerAsync(findRequest, header); findHttpResponse.StatusCode.Should().Be(HttpStatusCode.NotFound); }
public async Task ViewCustomer_ValidRequest_ReturnsCustomer() { // 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", }, }; var createHttpResponses = await CreateCustomersAsync(createRequests); // Act var someCreateResponse = createHttpResponses[1].Data; var id = someCreateResponse.Id; var findRequest = new ViewCustomerQuery { Id = id }; var findHttpResponse = await Fixture.Api.Customers.ViewCustomerAsync(findRequest, header); // Assert findHttpResponse.StatusCode.Should().Be(HttpStatusCode.OK); var findResponse = findHttpResponse.Data; findResponse.Should().BeEquivalentTo(someCreateResponse); }
public async Task ViewCustomer_NotExistRequest_ThrowsNotFoundRequestException() { // 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", }, }; var createResponses = await CreateCustomersAsync(createRequests); // Act var id = Guid.NewGuid(); var findRequest = new ViewCustomerQuery { Id = id }; var findHttpResponse = await Fixture.Api.Customers.ViewCustomerAsync(findRequest, header); // Assert findHttpResponse.StatusCode.Should().Be(HttpStatusCode.NotFound); }
public async Task CreateCustomer_ValidRequest_ReturnsResponse() { // Arrange var header = await GetDefaultHeaderDataAsync(); var createRequest = new CreateCustomerCommand { FirstName = "First name 1", LastName = "Last name 1", }; // Act var createHttpResponse = await Fixture.Api.Customers.CreateCustomerAsync(createRequest, header); // Assert createHttpResponse.StatusCode.Should().Be(HttpStatusCode.Created); var createResponse = createHttpResponse.Data; createResponse.Id.Should().NotBeEmpty(); createResponse.Should().BeEquivalentTo(createRequest); var id = createResponse.Id; var findRequest = new ViewCustomerQuery { Id = id }; var findHttpResponse = await Fixture.Api.Customers.ViewCustomerAsync(findRequest, header); var findResponse = findHttpResponse.Data; findHttpResponse.StatusCode.Should().Be(HttpStatusCode.OK); findResponse.Should().BeEquivalentTo(createResponse); }
public Task <ObjectClientResponse <ViewCustomerQueryResponse> > ViewCustomerAsync(ViewCustomerQuery request, HeaderData header) { var id = request.Id; return(Client.GetByIdAsync <Guid, ViewCustomerQueryResponse>(id, GetHeaders(header))); }