public void NotAddPersonToMovie_WhenPersonIsAlreadyAddedToMovie() { // Arrange var movieRepositoryMock = new Mock <IRepository <Movie> >(); var personRepositoryMock = new Mock <IRepository <Person> >(); var genreRepositoryMock = new Mock <IRepository <Genre> >(); var movieRoleRepositoryMock = new Mock <IRepository <MovieRole> >(); var movieRatingRepositoryMock = new Mock <IRepository <MovieRating> >(); var personMock = new Mock <Person>(); var movieMock = new Mock <Movie>(); Role role = Role.Actor; ICollection <Person> peopleInMovie = new List <Person>(); peopleInMovie.Add(personMock.Object); movieMock.Setup(m => m.People).Returns(peopleInMovie); personRepositoryMock.Setup(pr => pr.GetById(It.IsAny <int>())).Returns(personMock.Object); movieRepositoryMock.Setup(mr => mr.GetById(It.IsAny <int>())).Returns(movieMock.Object); var movieService = new MovieService( movieRepositoryMock.Object, personRepositoryMock.Object, genreRepositoryMock.Object, movieRoleRepositoryMock.Object, movieRatingRepositoryMock.Object); // Act movieService.AddPersonToMovie(It.IsAny <int>(), It.IsAny <int>(), role); // Assert movieRepositoryMock.Verify(mr => mr.Update(movieMock.Object), Times.Never); }
public void ThrowArgumentNullException_WhenMovieIsNull() { // Arrange var movieRepositoryMock = new Mock <IRepository <Movie> >(); var personRepositoryMock = new Mock <IRepository <Person> >(); var genreRepositoryMock = new Mock <IRepository <Genre> >(); var movieRoleRepositoryMock = new Mock <IRepository <MovieRole> >(); var movieRatingRepositoryMock = new Mock <IRepository <MovieRating> >(); var personMock = new Mock <Person>(); Movie movie = null; Role role = Role.Actor; personRepositoryMock.Setup(pr => pr.GetById(It.IsAny <int>())).Returns(personMock.Object); movieRepositoryMock.Setup(mr => mr.GetById(It.IsAny <int>())).Returns(movie); var movieService = new MovieService( movieRepositoryMock.Object, personRepositoryMock.Object, genreRepositoryMock.Object, movieRoleRepositoryMock.Object, movieRatingRepositoryMock.Object); // Act && Assert Assert.Throws <ArgumentNullException>(() => movieService .AddPersonToMovie(It.IsAny <int>(), It.IsAny <int>(), role)); }