public async Task DeleteCompanyAsync_ValidId_ShouldReturnDeletedCompany()
        {
            // Arrange
            var existingCompany = new GetCompanyPayload
            {
                Id = Guid.NewGuid().ToString(),
            };

            var expectedResponseContent =
                new StringContent(JsonConvert.SerializeObject(existingCompany, this.fixture.JsonSerializerSettings));

            var expectedResponse = new HttpResponseMessage
            {
                Content = expectedResponseContent,
            };

            var companyApi = this.fixture.GetCompanyApi(expectedResponse);

            var deleteCompanyResponse = new DeleteCompanyResponse();

            // Act
            Func <Task> act = async() => deleteCompanyResponse = await companyApi.DeleteCompanyAsync(existingCompany.Id);

            // Assert
            await act.Should().NotThrowAsync();

            deleteCompanyResponse.Id.Should().Be(existingCompany.Id);
        }
Esempio n. 2
0
        public Task Handle(DeleteCompanyRequest message, IMessageHandlerContext context)
        {
            log.Info("Received DeleteCompanyRequest");
            using (var unitOfWork = new CarUnitOfWork(new CarApiContext(_dbContextOptionsBuilder.Options)))
            {
                unitOfWork.Companies.Remove(unitOfWork.Companies.Get(message.CompanyId));
                unitOfWork.Complete();
            }
            var response = new DeleteCompanyResponse()
            {
                DataId = Guid.NewGuid()
            };

            var reply = context.Reply(response);

            return(reply);
        }
        public async Task DeleteCompanyAsync_ExistingCompany_ShouldDeleteCompany()
        {
            // Arrange
            await this.fixture.ClearFactroInstanceAsync();

            var companyApi = this.fixture.GetService <ICompanyApi>();

            var existingCompany = await this.fixture.CreateTestCompanyAsync(companyApi);

            var deleteCompanyResponse = new DeleteCompanyResponse();

            // Act
            Func <Task> act = async() => deleteCompanyResponse = await companyApi.DeleteCompanyAsync(existingCompany.Id);

            // Assert
            await act.Should().NotThrowAsync();

            deleteCompanyResponse.Should().BeEquivalentTo(existingCompany);

            await this.fixture.ClearFactroInstanceAsync();
        }