public async Task CreateCompany_ValidRequest_ShouldReturnExpectedCompany() { // Arrange var createCompanyRequest = new CreateCompanyRequest(Guid.NewGuid().ToString()); var expectedCompany = new CreateCompanyResponse { Name = createCompanyRequest.Name, }; var expectedResponseContent = new StringContent(JsonConvert.SerializeObject(expectedCompany, this.fixture.JsonSerializerSettings)); var expectedResponse = new HttpResponseMessage { Content = expectedResponseContent, }; var companyApi = this.fixture.GetCompanyApi(expectedResponse); var createCompanyResponse = default(CreateCompanyResponse); // Act Func <Task> act = async() => createCompanyResponse = await companyApi.CreateCompanyAsync(createCompanyRequest); // Assert await act.Should().NotThrowAsync(); createCompanyResponse.Should().BeEquivalentTo(expectedCompany); }
public Task Handle(CreateCompanyRequest message, IMessageHandlerContext context) { log.Info("Received CreateCompanyRequest"); using (var unitOfWork = new CarUnitOfWork(new CarApiContext(_dbContextOptionsBuilder.Options))) { unitOfWork.Companies.Add(message.Company); unitOfWork.Complete(); } var response = new CreateCompanyResponse() { Company = message.Company }; var reply = context.Reply(response); return(reply); }