public void Cannot_Select_Null_Seat()
        {
            // Arrange
            ICinemaApi API = new CinemaAPIUnderTest("Host");

            CinemaHallViewModel viewModel = new CinemaHallViewModel(API);

            Seat seat = new Seat(1);

            viewModel.SelectedSeats = 0;

            // Act
            viewModel.SeatSelectCommand.Execute(null);

            // Assert
            Assert.AreEqual(viewModel.SelectedSeats, 0);
        }
        public void Can_Get_Movie_Booked_Seats()
        {
            // Arrange
            ICinemaApi API = new CinemaAPIUnderTest("Host");

            CinemaHallViewModel viewModel = new CinemaHallViewModel(API);

            viewModel.SelectedMovie = new Movie {
                MovieId = 1, Name = "Фильм", ShowTime = "12:15:00"
            };

            // Act
            viewModel.MovieChangeCommand.Execute(null);

            // Assert
            Assert.IsNotNull(viewModel.Hall);
            Assert.AreEqual(viewModel.Hall[0][0].IsOccupied, true);
        }
        public void Can_Get_All_Movies()
        {
            // Arrange
            ICinemaApi API = new CinemaAPIUnderTest("Host");

            var movie = new Movie {
                MovieId = 1, Name = "Фильм", ShowTime = "12:15:00"
            };

            // Act
            CinemaHallViewModel viewModel = new CinemaHallViewModel(API);

            // Assert
            Assert.IsNotNull(viewModel.Movies);
            Assert.AreEqual(viewModel.Movies.Count, 1);

            Assert.AreEqual(movie.MovieId, viewModel.Movies[0].MovieId);
            Assert.AreEqual(movie.Name, viewModel.Movies[0].Name);
            Assert.AreEqual(movie.ShowTime, viewModel.Movies[0].ShowTime);
        }
        public void Can_Select_Free_Seat()
        {
            // Arrange
            ICinemaApi API = new CinemaAPIUnderTest("Host");

            CinemaHallViewModel viewModel = new CinemaHallViewModel(API);

            Seat seat = new Seat(1);

            viewModel.SelectedSeats = 0;
            seat.IsOccupied         = false;
            seat.IsSelected         = false;

            // Act
            viewModel.SeatSelectCommand.Execute(seat);

            // Assert
            Assert.AreEqual(seat.IsOccupied, false);
            Assert.AreEqual(seat.IsSelected, true);
            Assert.AreEqual(viewModel.SelectedSeats, 1);
        }
        public void Can_Book_Seats()
        {
            // Arrange
            ICinemaApi API = new CinemaAPIUnderTest("Host");

            CinemaHallViewModel viewModel = new CinemaHallViewModel(API);

            viewModel.SelectedMovie = new Movie {
                MovieId = 1, Name = "Фильм", ShowTime = "12:15:00"
            };

            viewModel.Hall = CinemaHall.InitCinemaHall(10, 10);

            viewModel.Hall[0][0].IsOccupied = false;
            viewModel.Hall[0][0].IsSelected = true;

            // Act
            viewModel.ToBookSeatsCommand.Execute(null);

            // Assert
            Assert.AreEqual(viewModel.SelectedSeats, 0);
            Assert.AreEqual(viewModel.Hall[0][0].IsSelected, false);
            Assert.AreEqual(viewModel.Hall[0][0].IsOccupied, true);
        }
示例#6
0
        public MainWindow()
        {
            InitializeComponent();

            DataContext = new CinemaHallViewModel(new CinemaApi("http://localhost:9090/"));
        }