public void ArgumentException_WhenInvalidCountOfArgumentsArePassed_AndIsSelectedBack(string inputParameters, string inputResult, string expected)
        {
            //Arrange
            var parameters = inputParameters.Split().ToList();

            var userServicesMock  = new Mock <IUserServices>();
            var itemSelectorMock  = new Mock <IItemSelector>();
            var cinemaConsoleMock = new Mock <IAlphaCinemaConsole>();

            var model = new ProjectionDetailsViewModel()
            {
                CityName  = "Sofia",
                MovieName = "Titanic",
                Hour      = "19:30h"
            };

            //Setup
            itemSelectorMock.Setup(selector => selector
                                   .ReadAtPosition(It.IsAny <int>(), It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <int>()))
            .Returns(inputResult);

            itemSelectorMock.Setup(selector => selector
                                   .DisplayItems(It.IsAny <List <string> >()))
            .Returns("Back");

            //Act
            var moviesByAge = new MoviesByAge(itemSelectorMock.Object, cinemaConsoleMock.Object,
                                              userServicesMock.Object);
            var result = moviesByAge.Execute(parameters);

            //Assert
            Assert.AreEqual(expected, result.First());
        }
Exemplo n.º 2
0
        public void ReturnCorrectList_WhenALinkIsRemoved(string inputParameters,
                                                         string selectorResult, string readFromSelector, string expected)
        {
            // Arrange
            var parameters = inputParameters.Split('|');
            var name       = parameters[0];
            var age        = int.Parse(parameters[2]);

            var projections = new ProjectionDetailsViewModel
            {
                CityName  = "TestCity",
                MovieName = "TestMovie",
                Hour      = "TestHour"
            };

            var selectorMock           = new Mock <IItemSelector>();
            var projectionServicesMock = new Mock <IProjectionsServices>();
            var userServicesMock       = new Mock <IUserServices>();
            var cinemaConsoleMock      = new Mock <IAlphaCinemaConsole>();

            selectorMock
            .Setup(s => s.DisplayItems(It.IsAny <List <string> >()))
            .Returns(selectorResult);

            selectorMock
            .Setup(s => s.ReadAtPosition(It.IsAny <int>(), It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <int>()))
            .Returns(readFromSelector);

            userServicesMock
            .Setup(us => us.GetID(name))
            .Returns(1);

            userServicesMock
            .Setup(us => us.GetProjectionsByUserID(1))
            .Returns(new List <ProjectionDetailsViewModel> {
                projections
            });

            cinemaConsoleMock
            .Setup(console => console.ReadKey(It.IsAny <bool>()));

            // Act
            var sut = new UserInfo(selectorMock.Object, cinemaConsoleMock.Object, userServicesMock.Object,
                                   projectionServicesMock.Object);
            var result = sut.Execute(parameters);

            // Assert
            Assert.AreEqual(expected, result.First());
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Details(int id)
        {
            var model = new ProjectionDetailsViewModel
            {
                Projection = await this.cinema.ByIdAsync <ProjectionDetailsModel>(id)
            };

            if (model.Projection == null)
            {
                return(NotFound());
            }

            if (User.Identity.IsAuthenticated)
            {
                var userId = this.userManager.GetUserId(User);
                model.UserBookedATicket = await this.cinema.UserBookedATicket(id, userId);
            }

            return(View(model));
        }
        public void ReturnCorrectList_WhenArgumentsArePassed(string inputParameters, string inputResult, string expected)
        {
            //Arrange
            var parameters = inputParameters.Split().ToList();

            var userServicesMock  = new Mock <IUserServices>();
            var itemSelectorMock  = new Mock <IItemSelector>();
            var cinemaConsoleMock = new Mock <IAlphaCinemaConsole>();

            var model = new ProjectionDetailsViewModel()
            {
                CityName  = "Sofia",
                MovieName = "Titanic",
                Hour      = "19:30h"
            };

            //Setup
            itemSelectorMock.Setup(selector => selector
                                   .ReadAtPosition(It.IsAny <int>(), It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <int>()))
            .Returns(inputResult);

            userServicesMock.Setup(userServices => userServices
                                   .GetMoviesByUserAge(It.IsAny <int>(), It.IsAny <int>()))
            .Returns(new List <ProjectionDetailsViewModel>()
            {
                model
            });

            cinemaConsoleMock.Setup(console => console
                                    .ReadKey(It.IsAny <bool>()));

            //Act
            var moviesByAge = new MoviesByAge(itemSelectorMock.Object, cinemaConsoleMock.Object,
                                              userServicesMock.Object);
            var result = moviesByAge.Execute(parameters);

            //Assert
            Assert.AreEqual(expected, result.First());
        }