public ActionResult ShowAvailableRoomsHolidayHomes(List <Room> rooms = null, List <HolidayHome> holidayhomes = null) { SearchModelView viewmodel = new SearchModelView(); viewmodel.holidayhomes = holidayhomes != null ? holidayhomes : new List <HolidayHome>(); viewmodel.rooms = rooms != null ? rooms : new List <Room>(); return(View("FiltrRoomAndHolidayHome", viewmodel)); }
public ActionResult Search() { SearchModelView search = new SearchModelView(); SelectListItem list = new SelectListItem(); list.Value = "Địa điểm"; list.Text = "Địa điểm"; List <SelectListItem> listCate = new List <SelectListItem>(); listCate.Add(list); listCate.AddRange(_productCategory.GetProductCategories().ToSelectListItems(-1, 1)); ViewBag.categoryList = listCate; return(PartialView("Search", search)); }
public ActionResult FiltrRoomAndHolidayHomeSecond(string country, string city, Choose choose, int guestnumber = 0, int bednumber = 0, DateTime?bookfrom = null, DateTime?bookto = null, List <HolidayHome> holidayhomes = null, List <Room> rooms = null) { List <Room> r = rooms; if (string.IsNullOrEmpty(country)) { ModelState.AddModelError("country", "Country is Required"); } if (string.IsNullOrEmpty(city)) { ModelState.AddModelError("city", "City is Required"); } if (bookfrom > bookto) { ModelState.AddModelError("bookfrom", "Book From is Later than Book To"); } if (bookfrom == bookto && bookto != null) { ModelState.AddModelError("bookfrom", "Book From is equal Book To"); } if (bookfrom <= DateTime.Now) { ModelState.AddModelError("bookfrom", "Book From should be later than today"); } if (bookto <= DateTime.Now) { ModelState.AddModelError("bookto", "Book to should be later than today"); } if (!ModelState.IsValid) { SearchModelView viewModel = new SearchModelView(); if (holidayhomes == null) { holidayhomes = new List <HolidayHome>(); } if (rooms == null) { rooms = new List <Room>(); } viewModel.holidayhomes = holidayhomes; viewModel.rooms = rooms; return(View("FiltrRoomAndHolidayHome", viewModel)); } IFiltrFactory factory = filtrfactory; FiltrRoomHolidayHome filtrclass = factory.CreateObject(choose); filtrclass.Country = country; filtrclass.City = city; filtrclass.GuestNumber = guestnumber; filtrclass.BedNumber = bednumber; filtrclass.BookFrom = bookfrom == null ? DateTime.MinValue : (DateTime)bookfrom; filtrclass.BookTo = bookto == null ? DateTime.MinValue : (DateTime)bookto; filtrclass.Filtr(); SearchModelView viewmodel = new SearchModelView(); viewmodel.holidayhomes = filtrclass.HolidayHomes; viewmodel.rooms = filtrclass.Rooms; return(View("FiltrRoomAndHolidayHome", viewmodel)); }
public void when_model_is_valid_FiltrRoomAndHolidayHomeSecond_returns_model_room_and_holidayhomes_count_more_than_0() { List <Room> roomList = new List <Room>(); roomList.Add(new Room() { Price = 100, numberofGuests = 1, numberofBeds = 1, doubleBed = false, petsAllowed = false, Toilet = true, Kitchen = false, numberofTelevisions = 1 }); roomList.Add(new Room() { Price = 100, numberofGuests = 1, numberofBeds = 1, doubleBed = false, petsAllowed = false, Toilet = true, Kitchen = false, numberofTelevisions = 1 }); roomList.Add(new Room() { Price = 200, numberofGuests = 2, numberofBeds = 2, doubleBed = false, petsAllowed = false, Toilet = true, Kitchen = false, numberofTelevisions = 1 }); roomList.Add(new Room() { Price = 200, numberofGuests = 2, numberofBeds = 1, doubleBed = true, petsAllowed = true, Toilet = false, Kitchen = true, numberofTelevisions = 1 }); roomList.Add(new Room() { Price = 300, numberofGuests = 3, numberofBeds = 3, doubleBed = false, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 2 }); roomList.Add(new Room() { Price = 300, numberofGuests = 3, numberofBeds = 2, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 2 }); List <HolidayHome> homesList = new List <HolidayHome>(); homesList.Add(new HolidayHome() { HolidayHomeId = 1, Price = 200, numberofGuests = 1, numberofBeds = 1, doubleBed = false, petsAllowed = true, Toilet = true, Kitchen = false, numberofTelevisions = 1, numberofFloors = 1 }); homesList.Add(new HolidayHome() { HolidayHomeId = 7, Price = 200, numberofGuests = 1, numberofBeds = 2, doubleBed = false, petsAllowed = true, Toilet = true, Kitchen = false, numberofTelevisions = 1, numberofFloors = 1 }); homesList.Add(new HolidayHome() { HolidayHomeId = 8, Price = 300, numberofGuests = 1, numberofBeds = 2, doubleBed = false, petsAllowed = true, Toilet = true, Kitchen = false, numberofTelevisions = 1, numberofFloors = 1 }); homesList.Add(new HolidayHome() { HolidayHomeId = 2, Price = 200, numberofGuests = 2, numberofBeds = 1, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 1, numberofFloors = 1 }); homesList.Add(new HolidayHome() { HolidayHomeId = 3, Price = 400, numberofGuests = 4, numberofBeds = 4, doubleBed = false, petsAllowed = true, Toilet = false, Kitchen = true, numberofTelevisions = 2, numberofFloors = 1 }); homesList.Add(new HolidayHome() { HolidayHomeId = 4, Price = 400, numberofGuests = 6, numberofBeds = 5, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 2, numberofFloors = 1 }); homesList.Add(new HolidayHome() { HolidayHomeId = 5, Price = 800, numberofGuests = 10, numberofBeds = 5, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 3, numberofFloors = 2 }); homesList.Add(new HolidayHome() { HolidayHomeId = 6, Price = 800, numberofGuests = 10, numberofBeds = 10, doubleBed = false, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 3, numberofFloors = 2 }); List <Resort> resortList = new List <Resort>(); resortList.Add(new Resort() { Name = "Resort Władysławowo", City = "Władysławowo", Country = "Poland", TelephoneNumber = 794219756 }); resortList.Add(new Resort() { Name = "Resort Sopot", City = "Sopot", Country = "Poland", TelephoneNumber = 794219755 }); resortList.Add(new Resort() { Name = "Resort Gdańsk1", City = "Gdańsk", Country = "Poland", TelephoneNumber = 794219754 }); resortList.Add(new Resort() { Name = "Resort Gdańsk2", City = "Gdańsk", Country = "Poland", TelephoneNumber = 794219754 }); resortList.Add(new Resort() { Name = "Resort Gdańsk3", City = "Gdańsk", Country = "Poland", TelephoneNumber = 794219754 }); foreach (var resort in resortList) { foreach (var hh in homesList) { resort.HolidayHomes.Add(hh); } } List <Hotel> hotelList = new List <Hotel>(); hotelList.Add(new Hotel() { Name = "Hotel Kraków", City = "Kraków", Country = "Poland", TelephoneNumber = 777888666 }); hotelList.Add(new Hotel() { Name = "Hotel Warszawa", City = "Warszawa", Country = "Poland", TelephoneNumber = 777888555 }); hotelList.Add(new Hotel() { Name = "Hotel Katowice", City = "Katowice", Country = "Poland", TelephoneNumber = 777888444 }); Mock <IHolidaysRepository> mock = new Mock <IHolidaysRepository>(); mock.Setup(x => x.GetUserById(It.IsAny <string>())).Returns(new ApplicationUser() { UserName = "******", Id = "aaa-bbb-ccc" }); mock.Setup(x => x.GetListHHByCountryAndCity(It.IsAny <string>(), It.IsAny <string>())).Returns(homesList); List <Hotel> listHotel = new List <Hotel>() { new Hotel() { Name = "Hotel Kraków", City = "Kraków", Country = "Poland", TelephoneNumber = 777888666 } }; Mock <IFiltrFactory> mockfactory = new Mock <IFiltrFactory>(); mockfactory.Setup(f => f.CreateObject(It.IsAny <Choose>())).Returns(new FiltrClassHolidayHome(mock.Object)); Mock <FiltrResortHotel> mockAbstract2 = new Mock <FiltrResortHotel>(); //mockAbstract2.Setup(x => x.Hotels).Returns(listHotel); Mock <FiltrRoomHolidayHome> mockAbstract = new Mock <FiltrRoomHolidayHome>(); //mockAbstract.Setup(x => x.HolidayHomes).Returns(homesList); //mock.Setup(x => x.GetHotelByID(It.IsAny<int>())).Returns(new Hotel() { Name = "Hotel Kraków", City = "Kraków", Country = "Poland", TelephoneNumber = 777888666 }); //mock.Setup(x => x.GetResortByID(It.IsAny<int>())).Returns(new Resort() { Name = "Resort Władysławowo", City = "Władysławowo", Country = "Poland", TelephoneNumber = 794219756 }); //mock.Setup(x => x.AddComment(null, It.IsAny<Hotel>(), It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(true); HomeController controller = new HomeController(mock.Object, () => "aaa-bbb-ddd", mockAbstract2.Object, mockfactory.Object, mockAbstract.Object); ViewResult result = ((ViewResult)controller.FiltrRoomAndHolidayHomeSecond("Poland", "Kraków", Choose.HolidayHome, 1, 2, new DateTime(2019, 8, 25), new DateTime(2019, 8, 26), homesList, roomList)); SearchModelView viewModel = (SearchModelView)result.Model; Assert.AreEqual(viewModel.holidayhomes.Count, 2); Assert.AreEqual(viewModel.rooms.Count, 0); }
public void when_room_list_is_null_FiltrRoomAndHolidayHomeSecond_returns_model_room_list_count_0() { //List<Room> roomList = new List<Room>(); //roomList.Add(new Room() { Price = 100, numberofGuests = 1, numberofBeds = 1, doubleBed = false, petsAllowed = false, Toilet = true, Kitchen = false, numberofTelevisions = 1 }); //roomList.Add(new Room() { Price = 100, numberofGuests = 1, numberofBeds = 1, doubleBed = false, petsAllowed = false, Toilet = true, Kitchen = false, numberofTelevisions = 1 }); //roomList.Add(new Room() { Price = 200, numberofGuests = 2, numberofBeds = 2, doubleBed = false, petsAllowed = false, Toilet = true, Kitchen = false, numberofTelevisions = 1 }); //roomList.Add(new Room() { Price = 200, numberofGuests = 2, numberofBeds = 1, doubleBed = true, petsAllowed = true, Toilet = false, Kitchen = true, numberofTelevisions = 1 }); //roomList.Add(new Room() { Price = 300, numberofGuests = 3, numberofBeds = 3, doubleBed = false, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 2 }); //roomList.Add(new Room() { Price = 300, numberofGuests = 3, numberofBeds = 2, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 2 }); List <HolidayHome> homesList = new List <HolidayHome>(); homesList.Add(new HolidayHome() { Price = 200, numberofGuests = 1, numberofBeds = 1, doubleBed = false, petsAllowed = true, Toilet = true, Kitchen = false, numberofTelevisions = 1, numberofFloors = 1 }); homesList.Add(new HolidayHome() { Price = 200, numberofGuests = 2, numberofBeds = 1, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 1, numberofFloors = 1 }); homesList.Add(new HolidayHome() { Price = 400, numberofGuests = 4, numberofBeds = 4, doubleBed = false, petsAllowed = true, Toilet = false, Kitchen = true, numberofTelevisions = 2, numberofFloors = 1 }); homesList.Add(new HolidayHome() { Price = 400, numberofGuests = 6, numberofBeds = 5, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 2, numberofFloors = 1 }); homesList.Add(new HolidayHome() { Price = 800, numberofGuests = 10, numberofBeds = 5, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 3, numberofFloors = 2 }); homesList.Add(new HolidayHome() { Price = 800, numberofGuests = 10, numberofBeds = 10, doubleBed = false, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 3, numberofFloors = 2 }); Mock <IHolidaysRepository> mock = new Mock <IHolidaysRepository>(); mock.Setup(x => x.GetUserById(It.IsAny <string>())).Returns(new ApplicationUser() { UserName = "******", Id = "aaa-bbb-ccc" }); List <Hotel> listHotel = new List <Hotel>() { new Hotel() { Name = "Hotel Kraków", City = "Kraków", Country = "Poland", TelephoneNumber = 777888666 } }; Mock <FiltrResortHotel> mockAbstract = new Mock <FiltrResortHotel>(); mockAbstract.Setup(x => x.Hotels).Returns(listHotel); //mock.Setup(x => x.GetHotelByID(It.IsAny<int>())).Returns(new Hotel() { Name = "Hotel Kraków", City = "Kraków", Country = "Poland", TelephoneNumber = 777888666 }); //mock.Setup(x => x.GetResortByID(It.IsAny<int>())).Returns(new Resort() { Name = "Resort Władysławowo", City = "Władysławowo", Country = "Poland", TelephoneNumber = 794219756 }); //mock.Setup(x => x.AddComment(null, It.IsAny<Hotel>(), It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(true); HomeController controller = new HomeController(mock.Object, () => "aaa-bbb-ddd", mockAbstract.Object); ViewResult result = ((ViewResult)controller.FiltrRoomAndHolidayHomeSecond("Poland", "Kraków", Choose.HolidayHome, 1, 2, new DateTime(2019, 8, 25), new DateTime(2019, 8, 25), homesList)); SearchModelView viewModel = (SearchModelView)result.Model; Assert.AreEqual(viewModel.holidayhomes.Count, 6); Assert.AreEqual(viewModel.rooms.Count, 0); }
public void when_calling_ShowAvailableRoomsHolidayHome_returns_SearchModelView() { Mock <IHolidaysRepository> mock = new Mock <IHolidaysRepository>(); HomeController controller = new HomeController(mock.Object); List <Room> roomList = new List <Room>(); roomList.Add(new Room() { Price = 100, numberofGuests = 1, numberofBeds = 1, doubleBed = false, petsAllowed = false, Toilet = true, Kitchen = false, numberofTelevisions = 1 }); roomList.Add(new Room() { Price = 100, numberofGuests = 1, numberofBeds = 1, doubleBed = false, petsAllowed = false, Toilet = true, Kitchen = false, numberofTelevisions = 1 }); roomList.Add(new Room() { Price = 200, numberofGuests = 2, numberofBeds = 2, doubleBed = false, petsAllowed = false, Toilet = true, Kitchen = false, numberofTelevisions = 1 }); roomList.Add(new Room() { Price = 200, numberofGuests = 2, numberofBeds = 1, doubleBed = true, petsAllowed = true, Toilet = false, Kitchen = true, numberofTelevisions = 1 }); roomList.Add(new Room() { Price = 300, numberofGuests = 3, numberofBeds = 3, doubleBed = false, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 2 }); roomList.Add(new Room() { Price = 300, numberofGuests = 3, numberofBeds = 2, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 2 }); List <HolidayHome> homesList = new List <HolidayHome>(); homesList.Add(new HolidayHome() { Price = 200, numberofGuests = 1, numberofBeds = 1, doubleBed = false, petsAllowed = true, Toilet = true, Kitchen = false, numberofTelevisions = 1, numberofFloors = 1 }); homesList.Add(new HolidayHome() { Price = 200, numberofGuests = 2, numberofBeds = 1, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 1, numberofFloors = 1 }); homesList.Add(new HolidayHome() { Price = 400, numberofGuests = 4, numberofBeds = 4, doubleBed = false, petsAllowed = true, Toilet = false, Kitchen = true, numberofTelevisions = 2, numberofFloors = 1 }); homesList.Add(new HolidayHome() { Price = 400, numberofGuests = 6, numberofBeds = 5, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 2, numberofFloors = 1 }); homesList.Add(new HolidayHome() { Price = 800, numberofGuests = 10, numberofBeds = 5, doubleBed = true, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 3, numberofFloors = 2 }); homesList.Add(new HolidayHome() { Price = 800, numberofGuests = 10, numberofBeds = 10, doubleBed = false, petsAllowed = true, Toilet = true, Kitchen = true, numberofTelevisions = 3, numberofFloors = 2 }); SearchModelView model = new SearchModelView(); model.holidayhomes = homesList; model.rooms = roomList; SearchModelView result = (SearchModelView)((ViewResult)controller.ShowAvailableRoomsHolidayHomes(roomList, homesList)).Model; Assert.AreEqual(result.holidayhomes, model.holidayhomes); Assert.AreEqual(result.rooms, model.rooms); }