public async Task Modify_ShouldReturnBadRequest_IfRepositoryReturnsFailure() { // Arrange var repositoryReturn = Task.FromResult(AddOrUpdateResult <INovelty> .Failure()); var repository = Substitute.For <INoveltyRepository>(); repository.TryUpdate(Arg.Is <NoveltyToAdd>(x => x.Name.Equals("name", StringComparison.Ordinal) && x.Description.Equals("des", StringComparison.Ordinal) && x.ID == 3), CancellationToken.None).Returns(repositoryReturn); var controller = new NoveltyController(_logger, repository); var dto = new NoveltyToAddDto { Name = "name", Description = "des" }; // Act var result = await controller.Modify(3, dto, CancellationToken.None); // Assert Assert.That(result, Is.InstanceOf <BadRequestObjectResult>()); }