public void InitiateNewGetFilmScreeningsPresenterInstanceWhenProperDependancyIsPassed()
        {
            var mockedScreeningService = new Mock <IFilmScreeningService>();

            var actualGetFilmScreeningsPresenter =
                new Presenters.FilmScreeningPresenters.GetFilmScreeningsPresenter(mockedScreeningService.Object);

            Assert.IsInstanceOf(
                typeof(Presenters.FilmScreeningPresenters.GetFilmScreeningsPresenter), actualGetFilmScreeningsPresenter);
        }
        public void ReturnIQueryableFilmScreeningCollectionWhenIsCalled()
        {
            var mockedScreeningService = new Mock <IFilmScreeningService>();

            var actualGetFilmScreeningsPresenter =
                new Presenters.FilmScreeningPresenters.GetFilmScreeningsPresenter(mockedScreeningService.Object);

            var result = actualGetFilmScreeningsPresenter.GetAllFutureScreenings();

            Assert.That(result, Is.Not.Null.And.InstanceOf <IQueryable <FilmScreening> >());
        }
        public void CallScreeningServiceGetAllFutureScreeningsMethod()
        {
            var mockedScreeningService = new Mock <IFilmScreeningService>();

            var actualGetFilmScreeningsPresenter =
                new Presenters.FilmScreeningPresenters.GetFilmScreeningsPresenter(mockedScreeningService.Object);

            actualGetFilmScreeningsPresenter.GetAllFutureScreenings();

            mockedScreeningService.Verify(service => service.GetAllFutureScreenings(), Times.Once);
        }
        public void CallFilmScreeningServiceGetByIdMethodWithTheSameId(string validId)
        {
            var mockedScreeningService = new Mock <IFilmScreeningService>();

            var actualGetFilmScreeningsPresenter =
                new Presenters.FilmScreeningPresenters.GetFilmScreeningsPresenter(mockedScreeningService.Object);

            actualGetFilmScreeningsPresenter.GetScreeningById(validId);

            mockedScreeningService.Verify(service => service.GetById(validId), Times.Once);
        }
        public void AllowCallingFilmScreeningServiceGetScreeningsByMovieTitleMethodWithNullOrEmptyParameters(string nullParameter)
        {
            var mockedScreeningService = new Mock <IFilmScreeningService>();

            var actualGetFilmScreeningsPresenter =
                new Presenters.FilmScreeningPresenters.GetFilmScreeningsPresenter(mockedScreeningService.Object);

            actualGetFilmScreeningsPresenter.GetScreeningsByMovieTitle(nullParameter);

            mockedScreeningService.Verify(service => service.GetScreeningsByMovieTitle(nullParameter), Times.Once);
        }
        public void CallFilmScreeningServiceGetScreeningsByMovieTitleMethodWithTheSameParameter(string validTitle)
        {
            var mockedScreeningService = new Mock <IFilmScreeningService>();

            var actualGetFilmScreeningsPresenter =
                new Presenters.FilmScreeningPresenters.GetFilmScreeningsPresenter(mockedScreeningService.Object);

            actualGetFilmScreeningsPresenter.GetScreeningsByMovieTitle(validTitle);

            mockedScreeningService.Verify(service => service.GetScreeningsByMovieTitle(validTitle), Times.Once);
        }
        public void ThrowWhenIsCalledWithNullOrEmptyParameterId()
        {
            var    mockedScreeningService = new Mock <IFilmScreeningService>();
            string nullId = null;

            var actualGetFilmScreeningsPresenter =
                new Presenters.FilmScreeningPresenters.GetFilmScreeningsPresenter(mockedScreeningService.Object);

            Assert.That(
                () => actualGetFilmScreeningsPresenter.GetScreeningById(nullId),
                Throws.InstanceOf <ArgumentNullException>());
        }
        public void ReturnIQueryableFilmSCreeningsCollectionWhenIsCalled()
        {
            var    mockedScreeningService = new Mock <IFilmScreeningService>();
            string validTitle             = "Batman";

            var actualGetFilmScreeningsPresenter =
                new Presenters.FilmScreeningPresenters.GetFilmScreeningsPresenter(mockedScreeningService.Object);

            var result = actualGetFilmScreeningsPresenter.GetScreeningsByMovieTitle(validTitle);

            Assert.That(result, Is.Not.Null.And.InstanceOf <IQueryable <FilmScreening> >());
        }
        public void ReturnFilmSCreeningWhenIsCalled()
        {
            var    mockedScreeningService = new Mock <IFilmScreeningService>();
            string validId = "1";

            mockedScreeningService.Setup(s => s.GetById(It.IsAny <string>())).Returns(new FilmScreening());

            var actualGetFilmScreeningsPresenter =
                new Presenters.FilmScreeningPresenters.GetFilmScreeningsPresenter(mockedScreeningService.Object);

            var result = actualGetFilmScreeningsPresenter.GetScreeningById(validId);

            Assert.That(result, Is.Not.Null.And.InstanceOf <FilmScreening>());
        }