public async Task SaveChangesAsync_VerifyValidTVShowIsUpdated()
        {
            var              mockTMDBapi  = new Mock <ITMDBapi>();
            Movie            newMovie     = CommonTestFunctions.GetSampleTVShow(true);
            List <GenreType> SelectGenres = new List <GenreType>();

            SelectGenres.Add(GenreType.Romance);

            Context.Movie.Add(newMovie);
            Context.SaveChanges();

            using (var newcontext = new MarksMoviesContext(Options))
            {
                MovieDBAccess db      = new MovieDBAccess(newcontext);
                var           service = new EditService(db, mockTMDBapi.Object);

                var result = await service.SaveMovieAsync(newMovie, SelectGenres);

                Assert.IsTrue(result != 0);
            }
            using (var newcontext = new MarksMoviesContext(Options))
            {
                var movie = await newcontext.Movie.Include(g => g.Genres).SingleAsync();

                Assert.IsNotNull(movie);
                Assert.IsNotNull(movie.Genres);
                Assert.AreEqual(1, movie.Genres.Count);
            }
        }
        public async Task SaveChangesAsync_VerifyNullMovieReturnsZero()
        {
            var              mockTMDBapi  = new Mock <ITMDBapi>();
            Movie            movie        = null;
            List <GenreType> SelectGenres = new List <GenreType>();

            var service = new EditService(DbAccess, mockTMDBapi.Object);

            var result = await service.SaveMovieAsync(movie, SelectGenres);

            Assert.AreEqual(0, result);
        }
        public async Task <ActionResult <Movie> > EditMovieAsync(int ID, [FromBody] Movie Movie)
        {
            if (ID > 0 && Movie != null)
            {
                Movie.ID = ID;
                var result = await _editService.SaveMovieAsync(Movie);

                if (result > 0)
                {
                    return(Ok(Movie));
                }
                else
                {
                    return(NotFound());
                }
            }
            else
            {
                return(NotFound());
            }
        }