/// <summary>
 /// Sets up the dependency on IMovieCritic
 /// </summary>
 protected override void GivenThat()
 {
     base.GivenThat();
     Critic = Mock<IMovieCritic>();
     Critic.Stub(mc => mc.IsViolent(Arg<IMovie>.Is.Anything))
         .Return(true);
 }
示例#2
0
        /// <summary>
        /// Generate the review
        /// </summary>
        /// <param name="builder"></param>
        /// <param name="critic"></param>
        /// <param name="movie"></param>
        /// <returns></returns>
        private static StringBuilder CriticReview(StringBuilder builder, IMovieCritic critic, IMovie movie)
        {
            const string CriticOpinion = "{0} says on {1}: {2}";

            return(builder
                   .AppendFormat(CriticOpinion, critic.Name, movie.Title, critic.Review(movie))
                   .AppendLine());
        }
示例#3
0
 /// <summary>
 /// Initializes a new instance of <see cref="MovieLibrary"/> class.
 /// </summary>
 /// <param name="critic">Critic to use</param>
 /// <param name="posterService">Poster service to use</param>
 /// <param name="factory">Factory to create new movies</param>
 public MovieLibrary(IMovieCritic critic, 
     IPosterService posterService, 
     IMovieFactory factory)
     : this(critic)
 {
     this._posterService = posterService;
     this._factory = factory;
 }
 /// <summary>
 /// Initializes a new instance of <see cref="SimpleMediaLibrary"/> class
 /// </summary>
 /// <param name="critic">Critic to use</param>
 /// <param name="posterService"></param>
 /// <param name="factory"></param>
 public SimpleMediaLibrary(IMovieCritic critic, 
     IPosterService posterService,
     IMovieFactory factory)
 {
     _critic = critic;
     _posterService = posterService;
     _factory = factory;
 }
示例#5
0
        public void Before_Each_Test()
        {
            _critic = MockRepository.GenerateMock<IMovieCritic>();

            // By default a dynamic mock returns false
            _movie1 = MockRepository.GenerateMock<IMovie>();
            _movie2 = MockRepository.GenerateMock<IMovie>();
            _movie3 = MockRepository.GenerateMock<IMovie>();

            _sut = new MovieLibrary(_critic);
        }
        /// <summary>
        /// Setup the movie
        /// </summary>
        protected override void GivenThat()
        {
            base.GivenThat();

            // Create all the dependencies
            this._critic = new MockMovieCritic();

            this._notifier = new MockSocialMediaNotifier();

            // Initialize the SUT
            this.Sut = new MovieLibrary(this._critic, this._notifier);

            this._movie = new MockMovie();
        }
示例#7
0
        /// <summary>
        /// Setup Basic common needs for IMovieLibrary Extensions
        /// </summary>
        protected override void GivenThat()
        {
            base.GivenThat();

            this.Critic = Mock <IMovieCritic>();

            var movies = new List <IMovie>();

            for (var i = 0; i < 10; i++)
            {
                movies.Add(Mock <IMovie>());
            }

            Extended.Stub(ex => ex.Contents).Return(movies);

            Extended.Stub(ex => ex.ListNonViolent()).Return(movies.Take(5));
        }
 /// <summary>
 /// Initializes a new instances of <see cref="SimpleMovieLibrary"/> class.
 /// </summary>
 /// <param name="posterService">Service to find the poster</param>
 /// <param name="factory">Factory to import the movies</param>
 /// <param name="critic">Critic to filter movies</param>
 public SimpleMovieLibrary(IPosterService posterService, IMovieFactory factory, IMovieCritic critic)
 {
     _posterService = posterService;
     _critic = critic;
     _factory = factory;
 }
 /// <summary>
 /// Checks the entire library and returns all movies deemed violent by the specified critic.
 /// </summary>
 /// <param name="movieLibrary">Extended Library</param>
 /// <param name="critic">Critic Rating the Movies</param>
 /// <returns>All movies deemed Violent by the Critic</returns>
 public static IEnumerable <IMovie> MoviesRatedViolentByCritic(this IMovieLibrary movieLibrary, IMovieCritic critic)
 {
     return(movieLibrary.Contents.Where(critic.IsViolent));
 }
示例#10
0
 public MovieLibrary(IMovieCritic critic)
 {
     // Store the critic
     this.Critic = critic;
 }
示例#11
0
 /// <summary>
 /// Initializes a new instance of <see cref="MovieLibrary"/> injecting the critic and social notifier
 /// </summary>
 /// <param name="critic">Critic to use</param>
 /// <param name="notifier">Notifier to use</param>
 public MovieLibrary(IMovieCritic critic, ISocialMediaNotifier notifier)
 {
     this._critic = critic;
     this._notifier = notifier;
 }
示例#12
0
 /// <summary>
 /// Checks the entire library and returns all movies deemed violent by the specified critic.
 /// </summary>
 /// <param name="movieLibrary">Extended Library</param>
 /// <param name="critic">Critic Rating the Movies</param>
 /// <returns>All movies deemed Violent by the Critic</returns>
 public static IEnumerable<IMovie> MoviesRatedViolentByCritic(this IMovieLibrary movieLibrary, IMovieCritic critic)
 {
     return movieLibrary.Contents.Where(critic.IsViolent);
 }
 /// <summary>
 /// Initializes a new instances of <see cref="SimpleMovieLibrary"/> class.
 /// </summary>
 /// <param name="posterService">Service to find the poster</param>
 /// <param name="factory">Factory to import the movies</param>
 /// <param name="critic">Critic to filter movies</param>
 public SimpleMovieLibrary(IPosterService posterService, IMovieFactory factory, IMovieCritic critic)
 {
     _posterService = posterService;
     _critic        = critic;
     _factory       = factory;
 }
示例#14
0
 /// <summary>
 /// Initializes a new instance of <see cref="SimpleMediaLibrary"/> class
 /// </summary>
 /// <param name="critic">Critic to use</param>
 public SimpleMediaLibrary(IMovieCritic critic)
     : this(critic, null, null)
 {
 }
示例#15
0
 public void BeforeEachTest()
 {
     this._mockery = new MockRepository();
     this._critic = _mockery.StrictMock<IMovieCritic>();
     this._library = new MovieLibrary(this._critic);
 }