コード例 #1
0
        public void CallAddMethodOfMovieRepositoryOnce()
        {
            // Arrange
            var movieMock                 = new Mock <Movie>();
            var genreMock                 = new Mock <Genre>();
            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> >();

            IEnumerable <Movie> filteredMovies = new List <Movie>();
            ICollection <Genre> filteredGenres = new List <Genre>();

            filteredGenres.Add(genreMock.Object);

            movieRepositoryMock.Setup(mr => mr.GetAllFiltered(It.IsAny <Expression <Func <Movie, bool> > >()))
            .Returns(filteredMovies);
            genreRepositoryMock.Setup(gr => gr.GetAllFiltered(It.IsAny <Expression <Func <Genre, bool> > >()))
            .Returns(filteredGenres);

            var movieService = new MovieService(
                movieRepositoryMock.Object,
                personRepositoryMock.Object,
                genreRepositoryMock.Object,
                movieRoleRepositoryMock.Object,
                movieRatingRepositoryMock.Object);

            // Act
            movieService.AddMovie(movieMock.Object, string.Empty);

            // Assert
            movieRepositoryMock.Verify(mr => mr.Add(movieMock.Object), Times.Once);
        }
コード例 #2
0
        public void ThrowArgumentNullException_WhenGenreDoesNotExist()
        {
            // Arrange
            var movieMock                 = new Mock <Movie>();
            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> >();

            IEnumerable <Movie> filteredMovies = new List <Movie>();
            IEnumerable <Genre> filteredGenres = new List <Genre>();

            movieRepositoryMock.Setup(mr => mr.GetAllFiltered(It.IsAny <Expression <Func <Movie, bool> > >()))
            .Returns(filteredMovies);
            genreRepositoryMock.Setup(gr => gr.GetAllFiltered(It.IsAny <Expression <Func <Genre, bool> > >()))
            .Returns(filteredGenres);

            var movieService = new MovieService(
                movieRepositoryMock.Object,
                personRepositoryMock.Object,
                genreRepositoryMock.Object,
                movieRoleRepositoryMock.Object,
                movieRatingRepositoryMock.Object);

            // Act && Assert
            Assert.Throws <ArgumentNullException>(() => movieService.AddMovie(movieMock.Object, string.Empty));
        }
コード例 #3
0
        public async Task ChangeIsDeletedToFalse_WhenMovieAlreadyExist()
        {
            // Arrange
            var contextOptions = new DbContextOptionsBuilder <AlphaCinemaContext>()
                                 .UseInMemoryDatabase(databaseName: "ChangeIsDeletedToFalse_WhenMovieAlreadyExist")
                                 .UseInternalServiceProvider(serviceProvider)
                                 .Options;

            using (var arrangeContext = new AlphaCinemaContext(contextOptions))
            {
                movie.IsDeleted = true;
                await arrangeContext.AddAsync(movie);

                await arrangeContext.SaveChangesAsync();
            }

            //Act and Assert
            using (var assertContext = new AlphaCinemaContext(contextOptions))
            {
                var command = new MovieService(assertContext);
                await command.AddMovie(movieName, movieDescription, releaseYear, movieDuration);

                Assert.IsTrue(!assertContext.Movies.First().IsDeleted);
                Assert.AreEqual(1, await assertContext.Movies.CountAsync());
                Assert.AreEqual(movieName, assertContext.Movies.First().Name);
                Assert.AreEqual(movieDescription, assertContext.Movies.First().Description);
                Assert.AreEqual(int.Parse(movieDuration), assertContext.Movies.First().Duration);
                Assert.AreEqual(int.Parse(releaseYear), assertContext.Movies.First().ReleaseYear);
            }
        }
コード例 #4
0
        public void AddMovieShouldCorrectlyAddMovieToDb_WhenCalledWithValidData()
        {
            // arrange
            var effortContext = new MovieAppDBContext(
                Effort.DbConnectionFactory.CreateTransient());
            var mapperMock = new Mock <IMapper>();

            var movieObjectToReturn = new Movie()
            {
                Title   = "Test Movie Object",
                Runtime = 120
            };

            mapperMock.Setup(x => x.Map <Movie>(It.IsAny <MovieModel>()))
            .Returns(movieObjectToReturn);

            var movieModelToAdd = new MovieModel()
            {
                Title   = "Test Movie model",
                Runtime = 120
            };

            // Act
            var sut = new MovieService(effortContext, mapperMock.Object);

            sut.AddMovie(movieModelToAdd);

            Assert.AreEqual(1, effortContext.Movies.Count());
        }
コード例 #5
0
        public async void ShouldNotAddMovieIfExistsWithSameName()
        {
            var name        = "film";
            var description = "opis filmu";
            var logo        = new ImageModel();

            var repo               = new Mock <IRepository <Movie> >();
            var reviewRepo         = new Mock <IRepository <Review> >();
            var favouriteMovieRepo = new Mock <IRepository <FavouriteMovie> >();
            var hostingEnvironment = new Mock <IHostingEnvironment>();

            var store       = new Mock <IUserStore <User> >();
            var userManager = new Mock <UserManager <User> >(store.Object, null, null, null, null, null, null, null, null);

            repo.Setup(x => x.Exists(It.IsAny <Expression <Func <Movie, bool> > >())).Returns(Task.FromResult(true));

            var movieModel = new MovieModel()
            {
                Name        = name,
                Description = description,
                Logo        = logo.Image
            };

            var movieService = new MovieService(repo.Object, reviewRepo.Object, userManager.Object, hostingEnvironment.Object, favouriteMovieRepo.Object);

            var result = await movieService.AddMovie(movieModel);

            string error = "Film o podanej nazwie został już utworzony";

            Assert.Contains(error, result.Error);
        }
コード例 #6
0
        private void registerMovieButton_Click(object sender, EventArgs e)
        {
            try
            {
                var   name         = this.nameTextBox.Text;
                var   directorName = this.directorNameTextBox.Text;
                float?rating       = (float?)this.ratingUpDown.Value;
                var   year         = (int)this.yearUpDown.Value;
                var   image        = this.movieImageBytes;


                //TODO: CHECK IF IMAGE ALREADY EXISTS
                //TODO: IF NOT -> UPLOAD IT FIRST (code)
                MovieService.AddMovie(name, rating, 150, directorName, year, this.ageRestriction, null, null, image);
                MessageBox.Show(Constants.SuccessMessages.MovieRegisteredSuccessfully);
                AdminMenuForm adminMenuForm = new AdminMenuForm();
                adminMenuForm.TopLevel   = false;
                adminMenuForm.AutoScroll = true;
                this.Hide();
                ((Button)sender).Parent.Parent.Controls.Add(adminMenuForm);
                adminMenuForm.Show();
            }
            catch (Exception exception)
            {
                MessageBox.Show("Movie Register failed!");
            }
        }
コード例 #7
0
        public static void ImportMovie(MovieDTO movieDto)
        {
            string movieName = movieDto.Name;

            InputDataValidator.ValidateStringMaxLength(movieName, Constants.MaxMovieNameLength);

            float?rating = movieDto.Rating;

            InputDataValidator.ValidateFloatInRange(rating, Constants.MinRatingValue, Constants.MaxRatingValue);

            int releaseYear = movieDto.ReleaseYear;

            MovieValidator.ValidateMovieDoesNotExist(movieName, releaseYear);

            List <string> categories = movieDto.Categories.Select(c => c.Name).ToList();

            CategoryValidator.CheckCategoriesExist(categories);

            string         directorName   = movieDto.DirectorName;
            int            length         = movieDto.Length;
            AgeRestriction ageRestriction = (AgeRestriction)Enum.Parse(typeof(AgeRestriction), movieDto.AgeRestriction);
            string         synopsis       = movieDto.Synopsis;
            string         releaseCountry = movieDto.ReleaseCountry;

            byte[] image = movieDto.Image;


            MovieService.AddMovie(movieName, rating, length, directorName, releaseYear, ageRestriction, synopsis,
                                  releaseCountry, image);
            MovieImportService.AddCategoriesToMovie(movieName, releaseYear, categories);

            Console.WriteLine(string.Format(Constants.ImportSuccessMessages.MoviesAddedSuccess, movieName));
        }
コード例 #8
0
        public void ThrowInvalidOperationException_WhenPassedMovieExists()
        {
            // Arrange
            var movieMock                 = new Mock <Movie>();
            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> >();

            ICollection <Movie> filteredMovies = new List <Movie>();

            filteredMovies.Add(movieMock.Object);

            movieRepositoryMock.Setup(mr => mr.GetAllFiltered(It.IsAny <Expression <Func <Movie, bool> > >()))
            .Returns(filteredMovies);

            var movieService = new MovieService(
                movieRepositoryMock.Object,
                personRepositoryMock.Object,
                genreRepositoryMock.Object,
                movieRoleRepositoryMock.Object,
                movieRatingRepositoryMock.Object);

            // Act && Assert
            Assert.Throws <InvalidOperationException>(() => movieService.AddMovie(movieMock.Object, string.Empty));
        }
コード例 #9
0
 protected void UploadButton_Click(object sender, EventArgs e)
 {
     if (EmptyCheck())
     {
         string name  = ImageUpload.FileName;
         string ipath = Server.MapPath(@"~\Images\") + name;
         ImageUpload.SaveAs(ipath);
         var movie = new Movie()
         {
             MovieTypeId = Convert.ToInt32(MovieTypeList.SelectedValue),
             MovieName   = MovieNameBox.Text,
             Description = DescriptionBox.Text,
             Actor       = ActorBox.Text,
             Image       = @"~\Images\" + name,
             UploadDate  = DateTime.Now,
             IsAudit     = false
         };
         var movieService = new MovieService();
         var result       = movieService.AddMovie(movie);
         if (result == 1)
         {
             Response.Redirect("MovieMaintenance.aspx");
         }
         else
         {
             Response.Write("<script>alert('添加失败')</script>");
         }
     }
 }
コード例 #10
0
        public async void ShouldAddMovieIfDataIsCorrect()
        {
            var name        = "film";
            var description = "opis filmu";
            var logo        = new ImageModel();

            var repo               = new Mock <IRepository <Movie> >();
            var reviewRepo         = new Mock <IRepository <Review> >();
            var favouriteMovieRepo = new Mock <IRepository <FavouriteMovie> >();
            var hostingEnvironment = new Mock <IHostingEnvironment>();

            var store       = new Mock <IUserStore <User> >();
            var userManager = new Mock <UserManager <User> >(store.Object, null, null, null, null, null, null, null, null);

            repo.Setup(x => x.Exists(It.IsAny <Expression <Func <Movie, bool> > >())).Returns(Task.FromResult(false));

            var movieModel = new MovieModel()
            {
                Name        = name,
                Description = description,
                Logo        = logo.Image
            };

            var movieService = new MovieService(repo.Object, reviewRepo.Object, userManager.Object, hostingEnvironment.Object, favouriteMovieRepo.Object);

            var result = await movieService.AddMovie(movieModel);

            Assert.Null(result.Error);
        }
コード例 #11
0
        public async Task AddNewMovie_WhenParametersAreCorrect()
        {
            // Arrange
            var contextOptions = new DbContextOptionsBuilder <AlphaCinemaContext>()
                                 .UseInMemoryDatabase(databaseName: "AddNewMovie_WhenParametersAreCorrect")
                                 .UseInternalServiceProvider(serviceProvider)
                                 .Options;

            //Act
            using (var actContext = new AlphaCinemaContext(contextOptions))
            {
                var command = new MovieService(actContext);
                await command.AddMovie(movieName, movieDescription, releaseYear, movieDuration);

                await actContext.SaveChangesAsync();
            }

            //Assert
            using (var assertContext = new AlphaCinemaContext(contextOptions))
            {
                Assert.AreEqual(1, await assertContext.Movies.CountAsync());
                Assert.AreEqual(movieName, assertContext.Movies.First().Name);
                Assert.AreEqual(movieDescription, assertContext.Movies.First().Description);
                Assert.AreEqual(int.Parse(movieDuration), assertContext.Movies.First().Duration);
                Assert.AreEqual(int.Parse(releaseYear), assertContext.Movies.First().ReleaseYear);
            }
        }
コード例 #12
0
ファイル: MovieController.cs プロジェクト: cleiton53/APIFilms
 public IActionResult PostCadastrar(Film movie)
 {
     if (movie != null)
     {
         serviceMovie = new MovieService(_context);
         serviceMovie.AddMovie(movie);
     }
     return(Accepted());
 }
コード例 #13
0
        public void MovieService_AddMovie_ThrowsDbUpdateException()
        {
            //Arrange
            MovieService movieService = new MovieService(_mockMoviesRepository.Object, _mockProjectionService.Object, _mockMovieTagService.Object);

            _mockMoviesRepository.Setup(x => x.Insert(It.IsAny <Movie>())).Throws(new DbUpdateException());

            //Act
            var result = movieService.AddMovie(_movieDomainModel).ConfigureAwait(false).GetAwaiter().GetResult();
        }
コード例 #14
0
        public async Task <IActionResult> CreateMovie([FromBody] MovieAddRequest request)
        {
            var movieSameTitleAndDate = await MovieService.GetMovie(request.Title, request.ReleaseDate);

            if (movieSameTitleAndDate != null)
            {
                return(BadRequest(ApiResponse.Failure("Movie", $"Movie {request.Title} released: {request.ReleaseDate.Date} exists")));
            }

            var addedMovie = await MovieService.AddMovie(request);

            return(Ok(ApiResponse <MovieDetails> .Success(addedMovie)));
        }
コード例 #15
0
        public void MovieService_AddMovie_ReturnsCreatedMovie()
        {
            //Arrange
            MovieService movieService = new MovieService(_mockMovieRepository.Object, _mockProjectionRepository.Object);

            //Act
            var resultAction = movieService.AddMovie(_movieDomainModel).ConfigureAwait(false).GetAwaiter().GetResult();

            //Assert
            Assert.IsNotNull(resultAction);
            Assert.AreEqual(_movieDomainModel.Title, resultAction.Title);
            Assert.AreEqual(_movie.Id, resultAction.Id);
            Assert.IsInstanceOfType(resultAction, typeof(MovieDomainModel));
        }
コード例 #16
0
        public void AddMovie_MovieAdded()
        {
            var mockRepo = new Mock <IMovieRepository>();
            var movie    = new Movie {
                Id = 123, Title = "Iron Man1", PosterPath = "IronMan1.jpg"
            };
            List <Movie> addedMovies = new List <Movie>();

            mockRepo.Setup(repo => repo.AddMovie(movie)).Callback <Movie>((m) => addedMovies.Add(m));
            var service = new MovieService(mockRepo.Object, null);

            service.AddMovie(movie);
            Assert.True(1 == addedMovies.Count);
            Assert.NotNull(addedMovies.SingleOrDefault(m => m.Title == "Iron Man1"));
        }
コード例 #17
0
        private void registerMovieButton_Click(object sender, EventArgs e)
        {
            var   name         = this.nameTextBox.Text;
            var   directorName = this.directorNameTextBox.Text;
            float?rating       = (float?)this.ratingUpDown.Value;
            var   year         = (int)this.yearUpDown.Value;
            var   image        = this.movieImageBytes;

            movieService.AddMovie(name, rating, 150, directorName, year, this.ageRestriction, null, null, image);
            MessageBox.Show(Constants.SuccessMessages.MovieRegisteredSuccessfully);
            var mainForm = (SoftCinemaForm)((Button)sender).Parent.Parent.Parent;

            mainForm.RenderSideBar();
            //Redirect to home page view
            SoftCinemaForm.SetContentHolderForm(new HomeForm());
        }
コード例 #18
0
        public void MovieService_AddMovie_RepositoryReturnsNull_ReturnsNull()
        {
            // Arrange
            Movie nullMovie = null;

            MovieService movieService = new MovieService(_mockMoviesRepository.Object, _mockProjectionService.Object, _mockMovieTagService.Object);

            _mockMoviesRepository.Setup(x => x.Insert(It.IsAny <Movie>())).Returns(nullMovie);
            _mockMoviesRepository.Setup(x => x.Save());

            //Act
            var result = movieService.AddMovie(_movieDomainModel).ConfigureAwait(false).GetAwaiter().GetResult();

            //Assert
            Assert.IsNull(result);
        }
コード例 #19
0
        public void GivenMovieWithSameTitle_WhenAddingNewMovie_ThenMovie()
        {
            var mock  = new Mock <IMovieRepository>();
            var movie = new Movie()
            {
                Title = "Hello World", Description = "Test"
            };

            mock.Setup(p => p.GetByTitle(It.IsAny <string>()))
            .Returns(It.IsAny <Movie>());

            var service = new MovieService(mock.Object);
            var dbMovie = service.AddMovie(movie);

            Assert.IsNull(dbMovie);
        }
コード例 #20
0
        public void MovieService_AddMovie_ReturnsAddedMovie()
        {
            //Arrange

            MovieService movieService = new MovieService(_mockMoviesRepository.Object, _mockProjectionService.Object, _mockMovieTagService.Object);

            _mockMoviesRepository.Setup(x => x.Insert(It.IsAny <Movie>())).Returns(_movie);
            _mockMoviesRepository.Setup(x => x.Save());

            //Act
            var result = movieService.AddMovie(_movieDomainModel).ConfigureAwait(false).GetAwaiter().GetResult();

            //Assert
            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result, typeof(MovieDomainModel));
            Assert.AreEqual(result.Id, _movie.Id);
        }
コード例 #21
0
        public void MovieService_AddMovie_ReturnNull()
        {
            //Arrange
            MovieDomainModel          movieDomainModel = _movieDomainModel;
            MovieCreateTagDomainModel movieCreate      = new MovieCreateTagDomainModel();

            Movie movie = null;

            _mockMoviesRepository = new Mock <IMoviesRepository>();
            _mockMoviesRepository.Setup(x => x.Insert(It.IsAny <Movie>())).Returns(movie);

            MovieService movieController = new MovieService(_mockMoviesRepository.Object, _mockProjectionsRepository.Object, _mockMovieTagsRepository.Object, _mockTicketRepository.Object, _mockTagRepository.Object);
            //Act
            var resultAction = movieController.AddMovie(movieDomainModel, movieCreate).ConfigureAwait(false).GetAwaiter().GetResult();

            //Assert
            Assert.IsNull(resultAction);
        }
コード例 #22
0
        public void AddMovie_ShouldReturnMovie_forValidMovieId()
        {
            //arrange
            Movie newMovie = new Movie {
                Id = 10004, Name = "Spiderman", Comments = string.Empty, PosterPath = "spiderman.jpg", ReleaseDate = "13-10-2003", VoteCount = 82345, VoteAverage = 7.9, UserId = "user1"
            };
            var mockRepo = new Mock <IMovieRepository>();
            Mock <IHttpContextAccessor> mockContext = GetMockContext();

            mockRepo.Setup(x => x.AddMovie(newMovie)).Returns(newMovie);
            var service = new MovieService(mockRepo.Object, mockContext.Object);

            //act
            var actual = service.AddMovie(newMovie);

            //assert
            Assert.NotNull(actual);
            Assert.Same(newMovie, actual);
        }
コード例 #23
0
        public void ThrowArgumentNullException_WhenPassedMovieIsNull()
        {
            // 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 movieService = new MovieService(
                movieRepositoryMock.Object,
                personRepositoryMock.Object,
                genreRepositoryMock.Object,
                movieRoleRepositoryMock.Object,
                movieRatingRepositoryMock.Object);

            // Act && Assert
            Assert.Throws <ArgumentNullException>(() => movieService.AddMovie(null, string.Empty));
        }
コード例 #24
0
        public void MovieService_AddMovie_ReturnMovieDomainModel()
        {
            //Arrange
            MovieDomainModel          movieDomainModel = _movieDomainModel;
            MovieCreateTagDomainModel movieCreate      = new MovieCreateTagDomainModel();
            Movie movie = _movie;

            //MovieDomainModel repositoryResponse = _mov;
            _mockMoviesRepository = new Mock <IMoviesRepository>();
            _mockMoviesRepository.Setup(x => x.Insert(It.IsAny <Movie>())).Returns(movie);

            MovieService movieController = new MovieService(_mockMoviesRepository.Object, _mockProjectionsRepository.Object, _mockMovieTagsRepository.Object, _mockTicketRepository.Object, _mockTagRepository.Object);
            //Act
            var resultAction = movieController.AddMovie(movieDomainModel, movieCreate).ConfigureAwait(false).GetAwaiter().GetResult();

            //Assert
            Assert.IsNotNull(resultAction);
            Assert.IsInstanceOfType(resultAction, typeof(MovieDomainModel));
            Assert.AreEqual(resultAction.Rating, movieDomainModel.Rating);
            Assert.AreEqual(resultAction.Id, movieDomainModel.Id);
        }
コード例 #25
0
        public void AddMovie_ShouldCallMovieRepositoryMockOnce_WhenTheCorrectRepositoryIsPassed()
        {
            var movieRepositoryMock = MockRepository.GenerateMock <IMovieRepository>();

            //Arrange
            var movie = new Movie {
                Id = 1
            };

            movieRepositoryMock.Expect(dao => dao.AddMovie(Arg <Movie> .Is.Anything)).Repeat.Once();;

            var movieService = new MovieService(movieRepositoryMock);

            //Act
            movieService.AddMovie(movie);

            //Assert
            //movieRepositoryMock.AssertWasCalled(x => x.AddMovie(movie),
            //                   x => x.Repeat.Once());

            movieRepositoryMock.VerifyAllExpectations();
        }
コード例 #26
0
        public async Task ThrowException_WhenMovieAlreadyExist()
        {
            // Arrange
            var contextOptions = new DbContextOptionsBuilder <AlphaCinemaContext>()
                                 .UseInMemoryDatabase(databaseName: "ThrowException_WhenMovieAlreadyExist")
                                 .UseInternalServiceProvider(serviceProvider)
                                 .Options;

            using (var arrangeContext = new AlphaCinemaContext(contextOptions))
            {
                await arrangeContext.AddAsync(movie);

                await arrangeContext.SaveChangesAsync();
            }

            //Act and Assert
            using (var assertContext = new AlphaCinemaContext(contextOptions))
            {
                var command = new MovieService(assertContext);
                await Assert.ThrowsExceptionAsync <Exception>(async() => await command.AddMovie(movieName, movieDescription, releaseYear, movieDuration));
            }
        }
コード例 #27
0
        public async Task <IActionResult> AddMovies([FromBody] Movie movie)
        {
            var user = HttpContext.User;

            if (user == null)
            {
                return(Unauthorized());
            }
            var userrole = user.Claims.FirstOrDefault(x => x.Type.Equals("userroles"))?.Value;

            if (!(await _userSer.IsAdmin(userrole)))
            {
                return(Unauthorized());
            }
            if (string.IsNullOrWhiteSpace(movie.Name))
            {
                return(Ok(new { data = "Movie name is blank. Cant add Movie", success = 0 }));
            }
            var response = await _movSer.AddMovie(movie);

            return(Ok(new { data = response.Item1, success = response.Item2 }));
        }
コード例 #28
0
        public void AddMovie_ShouldAddNewMovieRecord()
        {
            var initialCount = GetMovies().Count;
            var title        = Guid.NewGuid().ToString();

            var movieViewModel = new MovieViewModel
            {
                Name        = title,
                Rating      = "PG-13",
                ShowTime    = DateTime.Now,
                TicketPrice = 8.85m
            };

            _movieService.AddMovie(movieViewModel);

            var actual = GetMovieByTitle(title);

            Assert.AreEqual(initialCount + 1, GetMovies().Count);
            Assert.AreEqual(movieViewModel.Name, actual.Name);
            Assert.AreEqual(movieViewModel.Rating, actual.Rating);
            Assert.AreEqual(movieViewModel.TicketPrice, actual.TicketPrice);
        }
コード例 #29
0
        public void AddMovieShould_ThrowWhenCalledWithInvalidData()
        {
            // arrange
            var effortContext = new MovieAppDBContext(
                Effort.DbConnectionFactory.CreateTransient());
            var mapperMock = new Mock <IMapper>();

            var movieObjectToReturn = new Movie()
            {
                Title   = "Test Movie Object",
                Runtime = 120
            };

            mapperMock.Setup(x => x.Map <Movie>(It.IsAny <MovieModel>()))
            .Returns(movieObjectToReturn);

            var movieToAdd = new MovieModel();
            var sut        = new MovieService(effortContext, mapperMock.Object);

            // Act & Assert
            Assert.ThrowsException <ArgumentException>(() => sut.AddMovie((movieToAdd)));
        }
コード例 #30
0
 public ActionResult Create(MovieDto model)
 {
     _movieService.AddMovie(model);
     return(RedirectToAction("Index"));
 }