示例#1
0
        public BillboardCalculator(IMoviesRepository repository, IWeekDates weekDates, int weeksFromNow, int bigRoomsScreens, int smallRoomsScreens, bool basedOnCityMovies)
        {
            _repository        = repository;
            _weekDates         = weekDates;
            _weeksFromNow      = weeksFromNow;
            _bigRoomsScreens   = bigRoomsScreens;
            _smallRoomsScreens = smallRoomsScreens;
            _basedOnCityMovies = basedOnCityMovies;

            if (!IsValidWeeksFromNow())
            {
                throw new ArgumentException($"Weeks must be between {MIN_WEEKS_FROM_NOW} and {MAX_WEEKS_FROM_NOW}");
            }
            if (!IsValidBigRoomsScreensNumber())
            {
                throw new ArgumentException($"Number of big rooms must be between {MIN_SCREENS} and {MAX_SCREENS}");
            }
            if (!IsValidSmallRoomsScreensNumber())
            {
                throw new ArgumentException($"Number of small rooms must be between {MIN_SCREENS} and {MAX_SCREENS}");
            }
            if (!IsValidTotalRoomsScreensNumber())
            {
                throw new ArgumentException($"Total number of rooms must be greater than {MIN_SCREENS}");
            }
        }
示例#2
0
 public BillboardCalculatorShould()
 {
     _repository = Substitute.For <IMoviesRepository>();
     _utc        = Substitute.For <IUtc>();
     _utc.Now().Returns(new DateTime(2020, 02, 09));
     _weekDates = new WeekDates(_utc);
 }
示例#3
0
 public ManagersControllerShould()
 {
     _repository = Substitute.For <IMoviesRepository>();
     _utc        = Substitute.For <IUtc>();
     _utc.Now().Returns(new DateTime(2020, 02, 09));
     _weekDates = new WeekDates(_utc);
     _logger    = Substitute.For <ILogger <ManagersController> >();
 }
示例#4
0
        public Billboard(List <MovieInfo> moviesInfo, IWeekDates weekDates, int weeksFromNow, int bigRoomsScreens, int smallRoomsScreens)
        {
            _moviesInfo        = moviesInfo;
            _weekDates         = weekDates;
            _weeksFromNow      = weeksFromNow;
            _bigRoomsScreens   = bigRoomsScreens;
            _smallRoomsScreens = smallRoomsScreens;

            _weekBoard = GetWeekBoardFromMoviesInfo().ToList();
        }
示例#5
0
 public ManagersController(IMoviesRepository repository, IWeekDates weekDates, ILogger <ManagersController> logger)
 {
     _repository = repository;
     _weekDates  = weekDates;
     _logger     = logger;
 }