public void DeletePhoto_Should_ReturnOk() { var photoId = 1; mockService.Setup(s => s.RemovePhotoAsync(photoId, userId)).Verifiable(); controller.DeletePhoto(photoId).Result.Should().BeOfType <OkResult>(); mockService.Verify(); }
public void DeletePhoto_Returns404NotFound_WhenIDDoesNotExist() { mockRepo.Setup(repo => repo.GetPhotosByFamilyMember(0)).Returns(() => null); var controller = new PhotoController(mockRepo.Object, mapper); var result = controller.DeletePhoto(0); Assert.IsType <NotFoundResult>(result); }
public async Task DeletePhotoExceptionCatch() { /// Arrange var id = 45; var photo = new Photo() { Id = id, StateId = 69 }; mockRepo.Setup(x => x.Photo).Returns(_photoRepoMock.Object); _photoRepoMock.Setup(x => x.GetPhotoById(id)).Throws(new Exception()); // Act var result = await _sut.DeletePhoto(id); // Assert mockLogger.Verify(x => x.LogError("Something went wrong inside DeletePhoto(id) action: Exception of type 'System.Exception' was thrown."), Times.Once); Assert.IsType <ObjectResult>(result); }
public void DeletePhoto_Returns204NoContent_WhenIDExists() { mockRepo.Setup(repo => repo.GetPhotosByFamilyMember(1)).Returns(new Photo { Id = 1, PhotoUrl = "www.superhero.com/terra-doesnt-remember.jpg" }); var controller = new PhotoController(mockRepo.Object, mapper); var result = controller.DeletePhoto(1); Assert.IsType <NoContentResult>(result); }
public void DeletePhoto_ShouldCallDeletePhoto() { var photoId = 1; foreach (var photo in Photos) { photo.Album = new Album(); } Photos[photoId].Album.UserId = "1"; var mockService = new Mock <IPhotoService>(); mockService.Setup(service => service.GetPhotoById(photoId)).Returns(Photos[photoId]); mockService.Setup(service => service.Photos).Returns(Photos); var fakeUserManager = new FakeUserManagerBuilder() .Build(); var user = new ClaimsPrincipal(new ClaimsIdentity(new Claim[] { new Claim(ClaimTypes.Name, "test1"), new Claim(ClaimTypes.NameIdentifier, "1"), new Claim("custom-claim", "example claim value"), }, "mock")); fakeUserManager.Setup(u => u.FindByNameAsync("test1")).Returns(Task.FromResult(new User { Id = "1", UserName = "******", Photos = new List <Photo> { Photos[photoId] } })); var controller = new PhotoController(mockService.Object, _mapper, fakeUserManager.Object); var context = new ControllerContext { HttpContext = new DefaultHttpContext { User = user } }; controller.ControllerContext = context; controller.DeletePhoto(photoId); mockService.Verify(c => c.DeletePhoto(photoId), Times.Once()); }