public void GivenHotelOptionsReturnCheapestHotel() { hotelSystem.AddHotel(new Hotel("Lakewood", 110)); hotelSystem.AddHotel(new Hotel("Bridgewood", 160)); hotelSystem.AddHotel(new Hotel("Ridgewood", 220)); string[] dates = "10Dec2020,11Dec2020".Split(","); Hotel cheapestHotel = hotelSystem.GetCheapestHotel(dates); Assert.AreEqual("Lakewood", cheapestHotel.name); }
public void GivenHotelOptionsReturnCheapestHotelForRegularCustomer() { RegularCustomer regularCustomer = new RegularCustomer(); hotelSystem.AddHotel(new Hotel("Lakewood", 10000, regularCustomer)); hotelSystem.AddHotel(new Hotel("Bridgewood", 5000, regularCustomer)); hotelSystem.AddHotel(new Hotel("Ridgewood", 20000, regularCustomer)); string[] dates = "10Dec2020,11Dec2020".Split(","); Hotel cheapestHotel = hotelSystem.GetCheapestHotel(dates); Assert.AreEqual("Bridgewood", cheapestHotel.name); }
public void Given_NullDates_Should_Return_HotelReservationException() { hotelSystem.AddHotel(new Hotel("Lakewood", 110, 90, 80, 80, 3)); hotelSystem.AddHotel(new Hotel("Bridgewood", 150, 50, 110, 150, 4)); hotelSystem.AddHotel(new Hotel("Ridgewood", 220, 150, 100, 40, 5)); string[] dates = null; var exception = Assert.ThrowsException <HotelReservationException>(() => hotelSystem.GetCheapestHotel(dates)); Assert.AreEqual(HotelReservationException.ExceptionType.NULL_DATES, exception.type); }