public async Task Update_UpdatingFailed_AddLogAndReturnServiceErrorResult() { // Arrange var request = new UpdateSampleRequest { Id = 1 }; var model = new Sample { Id = 1, CreatedDate = It.IsAny <DateTime>() }; var exception = It.IsAny <Exception>(); var serviceResult = ServiceResult.Error(Messages.UpdatingFailed); repository.Setup(x => x.GetAsync(s => s.Id == request.Id)).ReturnsAsync(model); sampleFactory.Setup(x => x.CreateUpdateSample(model, request)).Returns(model); repository.Setup(x => x.Update(model)).Throws(exception); // Act var result = await service.Update(request); // Assert result.IsSuccess.Should().BeFalse(); result.Message.Should().Be(serviceResult.Message); unitOfWork.Verify(x => x.Save(), Times.Never); AssertHelpers.VerifyLogger(logger, LogLevel.Error, Times.Once()); }
public async Task Add_AddingFailed_AddLogAndReturnServiceErrorResult() { // Arrange var request = new AddSampleRequest(); var model = new Sample(); var exception = It.IsAny <Exception>(); var serviceResult = ServiceResult.Error(Messages.AddingFailed); sampleFactory.Setup(x => x.CreateAddSample(request)).Returns(model); repository.Setup(x => x.AddAsync(model)).ThrowsAsync(exception); // Act var result = await service.Add(request); // Assert result.IsSuccess.Should().BeFalse(); result.Message.Should().Be(serviceResult.Message); unitOfWork.Verify(x => x.Save(), Times.Never); AssertHelpers.VerifyLogger(logger, LogLevel.Error, Times.Once()); }
public async Task Delete_DeletingFailed_AddLogAndReturnServiceErrorResult() { // Arrange const int id = 1; var model = new Sample { Id = id }; var exception = It.IsAny <Exception>(); var serviceResult = ServiceResult.Error(Messages.DeletingFailed); repository.Setup(x => x.GetAsync(s => s.Id == id)).ReturnsAsync(model); repository.Setup(x => x.Delete(model)).Throws(exception); // Act var result = await service.Delete(id); // Assert result.IsSuccess.Should().BeFalse(); result.Message.Should().Be(serviceResult.Message); unitOfWork.Verify(x => x.Save(), Times.Never); AssertHelpers.VerifyLogger(logger, LogLevel.Error, Times.Once()); }