public void AddRating_WithValidMovieId_AdjustsMovieRating() { IMembershipService membershipService = new FakeMembershipService(Enumerable.Empty <MembershipUser>()); var movies = new List <Movie>(); const int movieId = 42; var movie = new Movie { Id = movieId, Directors = "Directors", GenreId = 1, Name = "Name", Rating = 3, Stars = "Stars", Writers = "Writers" }; movies.Add(movie); IRepository <Movie> movieRepository = new FakeMovieRepository(movies); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService) { ControllerContext = new FakeControllerContext() }; const short newRating = 5; movieController.AddRating(movieId, newRating); Assert.IsTrue(movie.Rating == newRating); }
public void Edit_WithMovieToEditFound_RedirectsToIndex() { IMembershipService membershipService = new FakeMembershipService(Enumerable.Empty <MembershipUser>()); var movies = new List <Movie>(); const int movieId = 42; movies.Add(new Movie { Id = movieId }); IRepository <Movie> movieRepository = new FakeMovieRepository(movies); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService); var editMovieViewModel = new EditMovieViewModel { Id = movieId, Directors = "Directors", GenreId = 1, Name = "Name", Rating = 3, Stars = "Stars", Writers = "Writers" }; var result = (RedirectToRouteResult)movieController.Edit(editMovieViewModel); Assert.IsTrue(string.Compare(result.Action(), "Index", true) == 0); }
public void AddRating_WithValidMovieId_CallsSaveOnMovieRepository() { IMembershipService membershipService = new FakeMembershipService(Enumerable.Empty <MembershipUser>()); var movies = new List <Movie>(); const int movieId = 42; var movie = new Movie { Id = movieId, Directors = "Directors", GenreId = 1, Name = "Name", Rating = 3, Stars = "Stars", Writers = "Writers" }; movies.Add(movie); bool wasCalled = false; Action saveAction = () => wasCalled = true; IRepository <Movie> movieRepository = new FakeMovieRepository(movies, saveCallback: saveAction); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService) { ControllerContext = new FakeControllerContext() }; movieController.AddRating(movieId, 5); Assert.IsTrue(wasCalled); }
public void GetEnumeratorTest() { var repo = new FakeMovieRepository(); var movieList = repo.GetMovieList().Result; Assert.True(movieList.Count() > 1); }
public void ClearRating_WithValidMovieId_ClearsRatingOnMovie() { IMembershipService membershipService = new FakeMembershipService(Enumerable.Empty <MembershipUser>()); var movies = new List <Movie>(); const int movieId = 42; var movie = new Movie { Id = movieId, Directors = "Directors", GenreId = 1, Name = "Name", Rating = 3, Stars = "Stars", Writers = "Writers" }; movies.Add(movie); IRepository <Movie> movieRepository = new FakeMovieRepository(movies); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService); movieController.ClearRating(movieId); Assert.IsTrue(movie.Rating == 0); }
public void GetTopMovieIdsTest() { //var wrapper = new HttpWrapper(); //var repo = new MovieRepository(wrapper); var fakeRepo = new FakeMovieRepository(); var ids = fakeRepo.GetTopMovieIds(); //File.WriteAllLines($"{_dataLoaction}\\movieIds.txt", ids); Assert.True(ids.Any()); }
public void GetMovieInfoTest() { //var wrapper = new HttpWrapper(); //var repo = new MovieApiHelper(wrapper); //var movie = repo.GetMovieInfo("tt0060196"); var fakeRepo = new FakeMovieRepository(); var movie = fakeRepo.GetMovie(""); Assert.NotNull(movie); }
public void Edit_WithNoMovieFound_RedirectsToMovieNotFound() { IMembershipService membershipService = new FakeMembershipService(Enumerable.Empty <MembershipUser>()); IRepository <Movie> movieRepository = new FakeMovieRepository(); var movieController = new MovieController(movieRepository, null, membershipService); var result = (RedirectToRouteResult)movieController.Edit(42); Assert.IsTrue(string.Compare(result.Action(), "MoveNotFound", true) == 0); }
public void FilterTest() { var fakeRepo = new FakeMovieRepository(); var movies = fakeRepo.GetMovieList().Result; var movieQuery = new MovieQuery { MinYear = 2013, MaxYear = 2016, OrderBy = "Released" }; var filteredMovies = movies.Filter(movieQuery); Assert.True(filteredMovies.Count() == 3); Assert.NotNull(filteredMovies.FirstOrDefault()); Assert.Equal(filteredMovies.FirstOrDefault().ImdbID, "2"); }
public void GetMovieDataTest() { //var wrapper = new HttpWrapper(); //var repo = new MovieRepository(wrapper); var fakeRepo = new FakeMovieRepository(); var data = fakeRepo.GetMovieList().Result; Assert.True(data.Count() > 0); var jsonString = JsonConvert.SerializeObject(data); Assert.NotNull(jsonString); //File.WriteAllText($"{_dataLoaction}\\movieData.txt", jsonString); }
public void Add_ReturnsView() { IMembershipService membershipService = new FakeMembershipService(Enumerable.Empty <MembershipUser>()); IRepository <Movie> movieRepository = new FakeMovieRepository(); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService); var result = movieController.Add() as ViewResult; Assert.IsNotNull(result); }
public void Edit_WithMovieToEditNotFound_RedirectsToMovieNotFound() { IMembershipService membershipService = new FakeMembershipService(Enumerable.Empty <MembershipUser>()); var movies = new List <Movie>(); IRepository <Movie> movieRepository = new FakeMovieRepository(movies); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService); var result = (RedirectToRouteResult)movieController.Edit(new EditMovieViewModel()); Assert.IsTrue(string.Compare(result.Action(), "MoveNotFound", true) == 0); }
public void Detail_WithMovieFound_ReturnsView() { IMembershipService membershipService = new FakeMembershipService(Enumerable.Empty <MembershipUser>()); var movies = new List <Movie>(); const int movieId = 42; movies.Add(new Movie { Id = movieId }); IRepository <Movie> movieRepository = new FakeMovieRepository(movies); var movieController = new MovieController(movieRepository, null, membershipService); var result = movieController.Detail(movieId) as ViewResult; Assert.IsNotNull(result); }
public void GetMoviesTest() { FakeMovieRepository repository = new FakeMovieRepository(new FakeMovieContext()); List <Movie> expected = new List <Movie>(); expected.Add(new Movie { ID = 1, Title = "Test Album 1", Genre = "Genre 1", Price = 8.99M, Rating = "R", ReleaseDate = new DateTime(1985, 6, 1) }); expected.Add(new Movie { ID = 2, Title = "Test Album 2", Genre = "Genre 2", Price = 8.99M, Rating = "R", ReleaseDate = new DateTime(1985, 6, 1) }); expected.Add(new Movie { ID = 3, Title = "Test Album 1", Genre = "Genre 3", Price = 8.99M, Rating = "R", ReleaseDate = new DateTime(1999, 6, 1) }); List <Movie> actual = repository.FindAll().ToList(); CollectionAssert.AreEquivalent(expected, actual); }
public void Add_WithValidUserAndModel_CallsSaveOnMovieRepository() { var users = new List <MembershipUser>(); Guid guid = Guid.NewGuid(); users.Add(new TestMembershipUser("test", guid)); IMembershipService membershipService = new FakeMembershipService(users); var movies = new List <Movie>(); const int movieId = 42; movies.Add(new Movie { Id = movieId }); bool wasCalled = false; Action saveAction = () => wasCalled = true; IRepository <Movie> movieRepository = new FakeMovieRepository(movies, saveCallback: saveAction); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService) { ControllerContext = new FakeControllerContext() }; var editMovieViewModel = new EditMovieViewModel { Id = movieId, Directors = "Directors", GenreId = 1, Name = "Name", Rating = 3, Stars = "Stars", Writers = "Writers" }; movieController.Add(editMovieViewModel); Assert.IsTrue(wasCalled); }
public void Index_WithValidUser_ReturnsView() { var users = new List <MembershipUser>(); Guid guid = Guid.NewGuid(); users.Add(new TestMembershipUser("test", guid)); IMembershipService membershipService = new FakeMembershipService(users); IRepository <Movie> movieRepository = new FakeMovieRepository(); var movieController = new MovieController(movieRepository, null, membershipService) { ControllerContext = new FakeControllerContext() }; var result = movieController.Index() as ViewResult; Assert.IsNotNull(result); }
public void ReturnGenresInViewBag() { var expectedGenres = new List <string>() { "Action", "Horror", "Comedy" }; var fakeRepo = new FakeMovieRepository() { GenreList = expectedGenres }; var controller = new MoviesController(fakeRepo); var result = controller.Index("foo", "bar") as ViewResult; SelectList genreSelectList = result.ViewBag.movieGenre as SelectList; foreach (var genreItem in genreSelectList) { CollectionAssert.Contains(expectedGenres, genreItem.Text); } Assert.That(fakeRepo.WasListMoviesCalled); }
public void Add_WithInvalidModelState_ReturnsView() { IMembershipService membershipService = new FakeMembershipService(Enumerable.Empty <MembershipUser>()); var movies = new List <Movie>(); const int movieId = 42; movies.Add(new Movie { Id = movieId }); IRepository <Movie> movieRepository = new FakeMovieRepository(movies); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService); //setup model error to trigger !IsValid movieController.ModelState.AddModelError("key", "errormessage"); var result = movieController.Add(new EditMovieViewModel()) as ViewResult; Assert.IsNotNull(result); }
public void Add_WithUserNotFound_ReturnsRedirectsToAccountRegister() { IMembershipService membershipService = new FakeMembershipService(Enumerable.Empty <MembershipUser>()); var movies = new List <Movie>(); const int movieId = 42; movies.Add(new Movie { Id = movieId }); IRepository <Movie> movieRepository = new FakeMovieRepository(movies); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService) { ControllerContext = new FakeControllerContext() }; var result = (RedirectToRouteResult)movieController.Add(new EditMovieViewModel()); Assert.IsTrue(string.Compare(result.Action(), "register", true) == 0); Assert.IsTrue(string.Compare(result.Controller(), "account", true) == 0); }
public void Add_WithValidUserAndModel_RedirectsToIndex() { var users = new List <MembershipUser>(); Guid guid = Guid.NewGuid(); users.Add(new TestMembershipUser("test", guid)); IMembershipService membershipService = new FakeMembershipService(users); var movies = new List <Movie>(); const int movieId = 42; movies.Add(new Movie { Id = movieId }); IRepository <Movie> movieRepository = new FakeMovieRepository(movies); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService) { ControllerContext = new FakeControllerContext() }; var editMovieViewModel = new EditMovieViewModel { Id = movieId, Directors = "Directors", GenreId = 1, Name = "Name", Rating = 3, Stars = "Stars", Writers = "Writers" }; var result = (RedirectToRouteResult)movieController.Add(editMovieViewModel); Assert.IsTrue(string.Compare(result.Action(), "Index", true) == 0); }
public void Delete_WithValidMovie_CallsAddOnMovieRepository() { var users = new List <MembershipUser>(); Guid guid = Guid.NewGuid(); users.Add(new TestMembershipUser("test", guid)); IMembershipService membershipService = new FakeMembershipService(users); var movies = new List <Movie>(); const int movieId = 42; movies.Add(new Movie { Id = movieId }); bool wasCalled = false; Action deleteCallback = () => wasCalled = true; IRepository <Movie> movieRepository = new FakeMovieRepository(movies, deleteCallback: deleteCallback); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService); var movie = new Movie { Id = movieId, Directors = "Directors", GenreId = 1, Name = "Name", Rating = 3, Stars = "Stars", Writers = "Writers" }; movieController.Delete(movie); Assert.IsTrue(wasCalled); }
public void SetUp() { _fakeMovieRepository = new FakeMovieRepository(); _movieRepository = new MovieRepository(); }
// // GET: /Movie/ public ActionResult Index() { var repository = new FakeMovieRepository(); return(View(repository.GetMovies().OrderBy(m => m.YearReleased))); }