Example #1
0
        public void T1_1()
        {
            var rRating    = new MpaaRatingAtMostSpecification(MpaaRating.R);
            var repository = new MovieRepository();

            IReadOnlyList <Movie> movies = repository.Find(rRating);

            movies.Count.ShouldEqual(2);
        }
Example #2
0
        public void T3()
        {
            var movie      = new Movie("Some Movie", new DateTime(2010, 2, 1), MpaaRating.G, "Triller", 7);
            var pg13Rating = new MpaaRatingAtMostSpecification(MpaaRating.PG13);

            bool isSatisfiedBy = pg13Rating.IsSatisfiedBy(movie);

            isSatisfiedBy.ShouldEqual(true);
        }
Example #3
0
        public void T3()
        {
            var movie = new Movie("Some Movie", new DateTime(2010, 2, 1), MpaaRating.G, "Triller", 7);
            var pg13Rating = new MpaaRatingAtMostSpecification(MpaaRating.PG13);

            bool isSatisfiedBy = pg13Rating.IsSatisfiedBy(movie);

            isSatisfiedBy.ShouldEqual(true);
        }
Example #4
0
        public void T1_1()
        {
            var rRating = new MpaaRatingAtMostSpecification(MpaaRating.R);
            var repository = new MovieRepository();

            IReadOnlyList<Movie> movies = repository.Find(rRating);

            movies.Count.ShouldEqual(2);
        }
Example #5
0
        public void T5()
        {
            var gRating    = new MpaaRatingAtMostSpecification(MpaaRating.G);
            var goodMovie  = new GoodMovieSpecification();
            var repository = new MovieRepository();

            IReadOnlyList <Movie> movies = repository.Find(gRating.Or(goodMovie));

            movies.Count.ShouldEqual(2);
        }
Example #6
0
        public void T5()
        {
            var gRating = new MpaaRatingAtMostSpecification(MpaaRating.G);
            var goodMovie = new GoodMovieSpecification();
            var repository = new MovieRepository();

            IReadOnlyList<Movie> movies = repository.Find(gRating.Or(goodMovie));

            movies.Count.ShouldEqual(2);
        }
        public void T1()
        {
            var movie      = new Movie("Some Movie", new DateTime(2010, 2, 1), MpaaRating.G, "Triller", 10);
            var pg13Rating = new MpaaRatingAtMostSpecification(MpaaRating.PG13);
            var goodMovie  = new GoodMovieSpecification();
            var composed   = pg13Rating.And(goodMovie);

            bool isSatisfiedBy = composed.IsSatisfiedBy(movie);

            isSatisfiedBy.ShouldEqual(true);
        }
Example #8
0
        public void UseSimpleExpression()
        {
            //-- Arrange
            var gRating    = new MpaaRatingAtMostSpecification(MpaaRating.G);
            var repository = new MovieRepository();

            //-- Act
            var movies = repository.Find(gRating);

            //-- Assert
            Assert.Equal(2, movies.Count());
        }
Example #9
0
        public void UseOrComposition()
        {
            //-- Arrange
            var gRating    = new MpaaRatingAtMostSpecification(MpaaRating.G);
            var goodMovie  = new GoodMovieSpecification();
            var repository = new MovieRepository();

            //-- Act
            var movies = repository.Find(gRating.Or(goodMovie));

            //-- Assert
            Assert.Equal(4, movies.Count());
        }
Example #10
0
        public void UseAndComposition()
        {
            //-- Arrange
            var gRating    = new MpaaRatingAtMostSpecification(MpaaRating.G);
            var goodMovie  = new GoodMovieSpecification();
            var repository = new MovieRepository();

            //-- Act
            var movies = repository.Find(gRating.And(goodMovie));

            //-- Assert
            Assert.Single(movies);
        }
Example #11
0
        public void SatisfyOneCriteria()
        {
            //-- Arrange
            var movie = new Movie
            {
                Name        = "Las Vegas parano",
                ReleaseDate = new DateTime(1998, 8, 19),
                MpaaRating  = MpaaRating.G,
                Genre       = "drama comedy",
                Rating      = 10
            };

            var pg13Rating = new MpaaRatingAtMostSpecification(MpaaRating.G);

            //-- Act
            bool isSatisfiedBy = pg13Rating.IsSatisfiedBy(movie);

            //-- Assert
            Assert.True(isSatisfiedBy);
        }
Example #12
0
        public void SatisfyNotOneCriteria()
        {
            //-- Arrange
            var movie = new Movie
            {
                Name        = "C\'est arrivé près de chez vous",
                ReleaseDate = new DateTime(1992, 11, 4),
                MpaaRating  = MpaaRating.R,
                Genre       = "drama comedy",
                Rating      = 9
            };

            var pg13Rating = new MpaaRatingAtMostSpecification(MpaaRating.G);

            //-- Act
            bool isSatisfiedBy = pg13Rating.IsSatisfiedBy(movie);

            //-- Assert
            Assert.False(isSatisfiedBy);
        }