示例#1
0
        public void NoPinguinInWeekendsFail()
        {
            //Arrange
            var animalBookingVM = new AnimalBookingVM()
            {
                BookingDate = DateTime.Parse("12-1-2020")
            };

            var errors        = new List <ValidationResult>();
            var chosenAnimals = new List <Animal>()
            {
                new Animal()
                {
                    Name = "Leeuw"
                }
            };

            //Act
            animalBookingVM.GetPinguinRule(errors, chosenAnimals);

            //Assert
            Assert.IsFalse(errors.Count == 1);
        }
示例#2
0
        public ActionResult FirstStep(AnimalBookingVM animalBookingVM)
        {
            ModelState.Remove("Animals");
            ModelState.Remove("UnavailableAnimals");

            var tempBooking = (BookingVM)TempData["Booking"];

            animalBookingVM.BookingDate = tempBooking.Booking.BookingDate;

            if (!ModelState.IsValid)
            {
                animalBookingVM.Animals            = AnimalRepo.GetAnimals();
                animalBookingVM.UnavailableAnimals = new List <Animal>();
                foreach (var animal in animalBookingVM.Animals)
                {
                    foreach (var booking in animal.Bookings)
                    {
                        if (booking.BookingDate == tempBooking.Booking.BookingDate)
                        {
                            animalBookingVM.UnavailableAnimals.Add(animal);
                        }
                    }
                }
                animalBookingVM.BookingDate = tempBooking.Booking.BookingDate;
                TempData["Booking"]         = tempBooking;
                return(View(animalBookingVM));
            }


            foreach (var animalId in animalBookingVM.AnimalIds)
            {
                tempBooking.Booking.Animals.Add(AnimalRepo.GetAnimal(animalId));
            }
            TempData["Booking"] = tempBooking;

            return(RedirectToAction("SecondStep"));
        }
示例#3
0
        public ActionResult FirstStep()
        {
            var animalBookingVM = new AnimalBookingVM()
            {
                Animals = AnimalRepo.GetAnimals(), UnavailableAnimals = new List <Animal>()
            };
            var bookingVM = (BookingVM)TempData["Booking"];

            foreach (var animal in animalBookingVM.Animals)
            {
                foreach (var booking in animal.Bookings)
                {
                    if (booking.BookingDate == bookingVM.Booking.BookingDate)
                    {
                        animalBookingVM.UnavailableAnimals.Add(animal);
                    }
                }
            }
            animalBookingVM.BookingDate = bookingVM.Booking.BookingDate;

            TempData["Booking"] = bookingVM;

            return(View(animalBookingVM));
        }