예제 #1
0
        public void CanReturnListOfFilmsFilteredByMultipleGenres()
        {
            MovieAccess sut = CreateSystemUnderTest();

            IReadOnlyCollection <Movie> movies = sut.GetMovies(null, null, Genre.Action | Genre.Drama);

            Assert.Single(movies);
        }
예제 #2
0
        public void CanReturnListOfFilmsFilteredByGenre()
        {
            MovieAccess sut = CreateSystemUnderTest();

            IReadOnlyCollection <Movie> movies = sut.GetMovies(null, null, Genre.Horror);

            Assert.Equal(2, movies.Count);
        }
예제 #3
0
        public void CanReturnListOfFilmsFilteredByYearOfRelease()
        {
            MovieAccess sut = CreateSystemUnderTest();

            IReadOnlyCollection <Movie> movies = sut.GetMovies(null, 2018, Genre.None);

            Assert.Single(movies);
        }
예제 #4
0
        public void CanReturnListOfFilmsFilteredByPartialTitle()
        {
            MovieAccess sut = CreateSystemUnderTest();

            IReadOnlyCollection <Movie> movies = sut.GetMovies("Iron Man", null, Genre.None);

            Assert.Equal(3, movies.Count);
        }
예제 #5
0
        public void CanReturnListOfFilms()
        {
            MovieAccess sut = CreateSystemUnderTest();

            IReadOnlyCollection <Movie> movies = sut.GetMovies(null, null, Genre.None);

            Assert.Equal(14, movies.Count);
        }
예제 #6
0
        public void CanReturnTop5Films()
        {
            MovieAccess sut = CreateSystemUnderTest();

            IReadOnlyCollection <Movie> allMovies = sut.GetMovies(null, null, Genre.None)
                                                    .OrderByDescending(a => a.AverageRating)
                                                    .ThenBy(a => a.Title)
                                                    .ToList();

            IReadOnlyCollection <Movie> topFive = sut.GetMoviesByRating(5);

            for (int i = 0; i < 5; i++)
            {
                Assert.Equal(allMovies.ElementAt(i).Id, topFive.ElementAt(i).Id);
            }
        }