/// <summary>
        /// The default constructor.
        /// </summary>
        /// <param name="uncategorizedMovieRepository">A container for uncategorized movie information.</param>
        /// <param name="remoteMovieRepository">A container for remote movie information.</param>
        /// <param name="userUserMovieRepository">A container for user-movie information.</param>
        public UncategorizedMovieController(IUncategorizedMovieRepository uncategorizedMovieRepository, IRemoteMovieRepository remoteMovieRepository,
			IUserMovieRepository userUserMovieRepository)
        {
            if (uncategorizedMovieRepository == null)
                throw new ArgumentNullException("uncategorizedMovieRepository");
            if (remoteMovieRepository == null)
                throw new ArgumentNullException("remoteMovieRepository");
            if (userUserMovieRepository == null)
                throw new ArgumentNullException("userUserMovieRepository");

            _uncategorizedMovieRepository = uncategorizedMovieRepository;
            _remoteMovieRepository = remoteMovieRepository;
            _userMovieRepository = userUserMovieRepository;
        }
        /// <summary>
        /// The default constructor.
        /// </summary>
        /// <param name="factory">A factory used to create encoders.</param>
        /// <param name="uncategorizedMovieRepository">A container for uncategorized movie information.</param>
        /// <param name="encodingProgressContainer">A container for encoding progress information.</param>
        public EncoderManager(IEncoderFactory factory, IUncategorizedMovieRepository uncategorizedMovieRepository,
			IEncodingProgressContainer encodingProgressContainer)
        {
            if (factory == null)
                throw new ArgumentNullException("factory");
            if (uncategorizedMovieRepository == null)
                throw new ArgumentNullException("uncategorizedMovieRepository");
            if (encodingProgressContainer == null)
                throw new ArgumentNullException("encodingProgressContainer");

            _factory = factory;
            _uncategorizedMovieRepository = uncategorizedMovieRepository;
            _encodingProgressContainer = encodingProgressContainer;
            _queue = new List<IList<Action>>();
        }
 public void Setup()
 {
     SessionProvider.CurrentSession = InMemorySession;
     _sut = new UncategorizedMovieRepository();
 }