public void AddActorToMovie_Should_MakeConnectionsIfActorAlreadyExist() { var db = new TFContext(this.DatabaseSimulator()); var genreServicesMock = new Mock <IGenreServices>(); var actorServicesMock = new Mock <IActorServices>(); var movieService = new AddMovieService (db, genreServicesMock.Object, actorServicesMock.Object); var movie = new Movie() { Id = movieIdToUse, Title = movieTitle }; var actorToAdd = new Actor() { Id = actorIdToUse, ApiActorId = apiActorIdToUse, FullName = actorName }; db.Actors.Add(actorToAdd); db.SaveChanges(); var actorsCast = new List <(Actor, string)> { (actorToAdd, actorRole) }; movieService.AddActorsToMovie(movie, actorsCast); Assert.AreEqual(1, db.MoviesActors.Count(a => a.ActorId == 2 && a.MovieId == 1)); }
public void AddGenreToMovie_Should_MakeConnectionsIfGenreAlreadyExist() { var db = new TFContext(this.DatabaseSimulator()); var genreServicesMock = new Mock <IGenreServices>(); var actorServicesMock = new Mock <IActorServices>(); var movieService = new AddMovieService (db, genreServicesMock.Object, actorServicesMock.Object); var movie = new Movie() { Id = movieIdToUse, Title = movieTitle }; var genreToAdd = new Genre() { Id = 2, Name = "Action", ApiGenreId = 2 }; db.Genres.Add(genreToAdd); db.SaveChanges(); var genresCast = new List <(int, string)> { (genreToAdd.Id, genreToAdd.Name) }; movieService.AddGenresToMovie(movie, genresCast); Assert.AreEqual(1, db.MoviesGenres.Count(a => a.GenreId == 2 && a.MovieId == 1)); }
public void AddMovie_ShouldThrow_WhenMovieIsAlreadyThere() { var db = new TFContext(this.DatabaseSimulator()); var genreServicesMock = new Mock <IGenreServices>(); var actorServicesMock = new Mock <IActorServices>(); var movieService = new AddMovieService (db, genreServicesMock.Object, actorServicesMock.Object); Movie movieToAdd = new Movie { ApiMovieId = apiMovieIdToUse, Title = movieTitle }; movieService.AddMovie(movieToAdd); Assert.ThrowsException <EntityAlreadyExistingException>(() => movieService.AddMovie(movieToAdd)); }
public void AddMovie_Should_AddMovieWhenItIsCorrect() { var db = new TFContext(this.DatabaseSimulator()); var genreServicesMock = new Mock <IGenreServices>(); var actorServicesMock = new Mock <IActorServices>(); var movieService = new AddMovieService (db, genreServicesMock.Object, actorServicesMock.Object); var movieToAdd = new Movie() { ApiMovieId = apiMovieIdToUse, Title = movieTitle }; var result = movieService.AddMovie(movieToAdd); Assert.AreEqual(movieTitle, result.Title); Assert.AreEqual(apiMovieIdToUse, result.ApiMovieId); }
public void AddMovie_Should_RestoreActor() { var db = new TFContext(this.DatabaseSimulator()); var genreServicesMock = new Mock <IGenreServices>(); var actorServicesMock = new Mock <IActorServices>(); var movieService = new AddMovieService (db, genreServicesMock.Object, actorServicesMock.Object); Movie movieToAdd = new Movie { ApiMovieId = apiMovieIdToUse, Title = movieTitle }; movieService.AddMovie(movieToAdd); movieToAdd.IsDeleted = true; movieService.AddMovie(movieToAdd); Assert.IsFalse(movieToAdd.IsDeleted); }