Exemplo n.º 1
0
        public IActionResult CreateBooking(BookingModelIn newBooking)
        {
            var booking  = newBooking.FromModelInToBooking();
            var response = this.bookingLogic.AddBooking(booking);

            response.Accommodation = new Accommodation();
            return(Ok(new BookingModelOut(response)));
        }
Exemplo n.º 2
0
        public void TestCreateBookingOK()
        {
            Tourist tourist = new Tourist()
            {
                Email    = "*****@*****.**",
                Id       = 1,
                Name     = "s",
                LastName = "b"
            };
            Accommodation accommodation = new Accommodation()
            {
                Id            = 6,
                Address       = "aa",
                ContactNumber = "44",
                Name          = "ss"
            };
            Booking booking = new Booking()
            {
                Id              = 5,
                TotalPrice      = 10,
                CheckIn         = DateTime.Now.AddDays(1),
                CheckOut        = DateTime.Now.AddDays(2),
                HeadGuest       = tourist,
                Accommodation   = accommodation,
                AccommodationId = 6
            };
            BookingModelIn bookingModel = new BookingModelIn()
            {
                CheckIn         = booking.CheckIn,
                CheckOut        = booking.CheckOut,
                GuestEmail      = booking.HeadGuest.Email,
                GuestName       = booking.HeadGuest.Name,
                GuestLastName   = booking.HeadGuest.LastName,
                AccommodationId = 0
            };
            Guest guest1 = new Guest()
            {
                Amount     = 1,
                Multiplier = 1,
                BookingId  = 5,
                Booking    = booking
            };
            Guest guest2 = new Guest()
            {
                Amount     = 2,
                Multiplier = 2,
                BookingId  = 5,
                Booking    = booking
            };
            Guest guest3 = new Guest()
            {
                Amount     = 3,
                Multiplier = 3,
                BookingId  = 5,
                Booking    = booking
            };
            List <Guest> guestList = new List <Guest>
            {
                guest1,
                guest2,
                guest3
            };

            bookingModel.Guests = guestList;
            var mockBooking = new Mock <IBookingLogic>(MockBehavior.Strict);

            mockBooking.Setup(p => p.AddBooking(It.IsAny <Booking>())).Returns(booking);
            var controller = new BookingController(mockBooking.Object);

            var result = controller.CreateBooking(bookingModel) as OkObjectResult;

            mockBooking.VerifyAll();
            Assert.AreEqual(200, result.StatusCode);
        }