Exemplo n.º 1
0
        public void BookingController_CreateBooking()
        {
            IHotelTamagotchiContext c  = new FakeHotelTamagotchiContext();
            IHotelRoomRepository    hr = new HotelRoomRepository(c);
            ITamagotchiRepository   tr = new TamagotchiRepository(c);
            BookingController       bc = new BookingController(hr, tr);
            var ccMock = new Mock <ControllerContext>();

            ccMock.SetupGet(x => x.HttpContext.Session["User"]).Returns("testUser");
            ccMock.SetupGet(x => x.HttpContext.Session["Role"]).Returns(UserRole.Customer);
            bc.ControllerContext = ccMock.Object;
            FormCollection fc = new FormCollection();


            TamagotchiViewModel t = new TamagotchiViewModel()
            {
                Name  = "Test",
                Alive = true
            };

            tr.Add(t);
            HotelRoomViewModel h = new HotelRoomViewModel()
            {
                Size = 5,
                Type = HotelRoomType.Fightroom
            };

            hr.Add(h);
            fc.Add("1", "true,false");
            bc.Create(fc, h);
            Assert.AreEqual(t.ToModel().HotelRoomId, tr.Find(t.Id).HotelRoomId);
            tr.Remove(t);
            hr.Remove(h);
        }
Exemplo n.º 2
0
        public void CreateBookingWithInvalidFlight()
        {
            var options = new DbContextOptionsBuilder <FlightsContext>()
                          .UseInMemoryDatabase(databaseName: "CreateBookingWithInvalidFlight")
                          .Options;

            using (var flightContext = new FlightsContext(options))
            {
                flightContext.Add(new Flight {
                    Number = 1, Capacity = 1
                });
                flightContext.SaveChanges();
            }

            using (var flightContext = new FlightsContext(options))
            {
                var bookingController = new BookingController(flightContext);
                var result            = bookingController.Create(new Booking
                {
                    PassengerName = "Joe Bloggs",
                    Date          = new DateTime(2018, 5, 10),
                    FlightNumber  = 2
                });
                Assert.IsTrue(result is BadRequestResult);
            }
        }
Exemplo n.º 3
0
        private void secondBooking()
        {
            //Arrange
            CustomerController   cusctr2  = new CustomerController();
            EmployeeController   empctr2  = new EmployeeController();
            EscapeRoomController escctr2  = new EscapeRoomController();
            BookingController    bookctr2 = new BookingController();
            Customer             cus2     = cusctr2.Get("Anorak");
            Employee             emp2     = empctr2.Get(1);
            EscapeRoom           er2      = escctr2.GetForOwner(3);
            Booking checkBook2;
            Booking book2 = new Booking {
                amountOfPeople = 2,
                bookingTime    = new TimeSpan(16, 00, 0000),
                cus            = cus2,
                date           = DateTime.Now.AddDays(14).Date,
                emp            = emp2,
                er             = er2,
            };

            //Act
            bookctr2.Create(book2.emp.employeeID, book2.cus.username, book2.er.escapeRoomID, book2.bookingTime, book2.amountOfPeople, book2.date);
            checkBook2 = bookctr2.Get(er2.escapeRoomID, cus2.username, book2.date);

            //Assert
            Assert.AreEqual(book2.amountOfPeople, checkBook2.amountOfPeople);
            autoEvent.Set();
            autoEvent.WaitOne();
            bookctr2.Delete(book2.emp.employeeID, book2.cus.username, book2.er.escapeRoomID, book2.bookingTime, book2.amountOfPeople, book2.date);
        }
Exemplo n.º 4
0
        private void firstBooking()
        {
            //Arrange
            CustomerController   cusctr  = new CustomerController();
            EmployeeController   empctr  = new EmployeeController();
            EscapeRoomController escctr  = new EscapeRoomController();
            BookingController    bookctr = new BookingController();
            Customer             cus     = cusctr.Get("SirLol");
            Employee             emp     = empctr.Get(1);
            EscapeRoom           er      = escctr.GetForOwner(3);
            Booking checkBook;
            Booking book = new Booking
            {
                amountOfPeople = 5,
                bookingTime    = new TimeSpan(16, 00, 0000),
                cus            = cus,
                date           = DateTime.Now.AddDays(14).Date,
                emp            = emp,
                er             = er,
            };

            //Act
            autoEvent.WaitOne();
            bookctr.Create(book.emp.employeeID, book.cus.username, book.er.escapeRoomID, book.bookingTime, book.amountOfPeople, book.date);
            checkBook = bookctr.Get(er.escapeRoomID, cus.username, book.date);

            //Assert
            Assert.AreNotEqual(book.amountOfPeople, checkBook.amountOfPeople);
            autoEvent.Set();
        }
Exemplo n.º 5
0
        public void GetBookingCreate()
        {
            // Arrange
            BookingController controller = new BookingController();

            // Act
            ViewResult result = controller.Create() as ViewResult;

            // Assert
            Assert.IsNotNull(result);
        }
Exemplo n.º 6
0
        public void BookingDateNotInPast()
        {
            Booking booking = GenericBooking();

            booking.date = DateTime.Today.AddDays(-2);
            BookingController bookingController = new BookingController();

            ActionResult result = bookingController.Create(booking);

            //Assert
            Assert.IsTrue(result.GetType().Name == "ViewResult");
        }
Exemplo n.º 7
0
        public void CleanBookingShouldCreate()
        {
            Booking           booking           = GenericBooking();
            BookingController bookingController = new BookingController();

            ActionResult result = bookingController.Create(booking);

            Assert.IsTrue(result.GetType().Name != "ViewResult");
            List <Booking> newBooking = db.Bookings.Where(a => a.bookingNumber == bookingNumber).ToList();

            Assert.IsTrue(newBooking.Count != 0);
        }
Exemplo n.º 8
0
        public void CreateBookingWithNoBooking()
        {
            var options = new DbContextOptionsBuilder <FlightsContext>()
                          .UseInMemoryDatabase(databaseName: "CreateBookingWithNoBooking")
                          .Options;

            using (var flightContext = new FlightsContext(options))
            {
                var bookingController = new BookingController(flightContext);
                var result            = bookingController.Create(null);
                Assert.IsTrue(result is BadRequestResult);
            }
        }
Exemplo n.º 9
0
        public void CreateBooking()
        {
            var options = new DbContextOptionsBuilder <FlightsContext>()
                          .UseInMemoryDatabase(databaseName: "CreateBooking")
                          .Options;

            using (var flightContext = new FlightsContext(options))
            {
                var flight = new Flight {
                    Number = 1, Capacity = 1
                };
                flightContext.Add(flight);
                flightContext.SaveChanges();
            }

            using (var flightContext = new FlightsContext(options))
            {
                var bookingController = new BookingController(flightContext);
                var result            = bookingController.Create(new Booking
                {
                    PassengerName = "Joe Bloggs",
                    Date          = new DateTime(2018, 5, 10),
                    FlightNumber  = 1
                });
                Assert.IsTrue(result is CreatedAtRouteResult);
                var objectResult = result as CreatedAtRouteResult;
                Assert.IsTrue(objectResult.Value is Booking);
                var bookings = objectResult.Value as Booking;
                Assert.AreEqual(1, bookings.Id);
                Assert.AreEqual("Joe Bloggs", bookings.PassengerName);
                Assert.AreEqual(new DateTime(2018, 5, 10), bookings.Date);
                Assert.AreEqual(1, flightContext.Bookings.Count());
                Assert.AreEqual(1, flightContext.Bookings.First().Id);
                Assert.AreEqual("Joe Bloggs", flightContext.Bookings.First().PassengerName);
                Assert.AreEqual(new DateTime(2018, 5, 10), flightContext.Bookings.First().Date);
            }
        }
Exemplo n.º 10
0
        /// <summary>
        /// the method to receive the input to the attributes from either MVC or Desktop client
        /// </summary>
        /// <param name="EmpID"> Employees id</param>
        /// <param name="username">customers user-name</param>
        /// <param name="ER_ID"> Escape-romms id</param>
        /// <param name="bookTime"> the time off the day for the booking </param>
        /// <param name="AOP"> amount of peaplo atending the booking</param>
        /// <param name="Bdate"> the date for the booking</param>
        /// <returns></returns>
        public int Create(int EmpID, string username, int ER_ID, TimeSpan bookTime, int AOP, DateTime Bdate)
        {
            BookingController BCon = new BookingController();

            return(BCon.Create(EmpID, username, ER_ID, bookTime, AOP, Bdate));
        }