Beispiel #1
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 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);
        }
Beispiel #4
0
        public void UseNotComposition()
        {
            //-- Arrange
            var goodMovie  = new GoodMovieSpecification();
            var repository = new MovieRepository();

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

            //-- Assert
            Assert.Single(movies);
        }
Beispiel #5
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());
        }
Beispiel #6
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);
        }