public void GivenDateRange_FindBestRatedCheapestHotelMethod_ShouldReturnBestRatedFromCheapestHotelsForRegularcustomer()
        {
            DateTime start    = DateTime.Parse("12Nov2020");
            DateTime end      = DateTime.Parse("14Nov2020");
            string   expected = "Ridgewood";

            ManageHotels hotelManager = new ManageHotels(CustomerType.REGULAR);

            hotelManager.AddHotel(new Hotel("Lakewood", 110, 90, 80, 80, 3));
            hotelManager.AddHotel(new Hotel("Bridgewood", 160, 60, 110, 150, 4));
            hotelManager.AddHotel(new Hotel("Ridgewood", 110, 90, 100, 40, 5));
            List <Hotel> cheapestHotelsList = hotelManager.FindCheapestBestRatedHotel(start, end);

            Assert.AreEqual(expected, cheapestHotelsList[0].name);
        }
        public void GivenDateRange_FindBestRatedHotelMethod_ShouldReturnAllBestRatedHotelsForRewardCustomer()
        {
            DateTime start = DateTime.Parse("12Nov2020");
            DateTime end   = DateTime.Parse("14Nov2020");

            string[] expected = { "Ridgewood" };

            ManageHotels hotelManager = new ManageHotels(CustomerType.REWARD);

            hotelManager.AddHotel(new Hotel("Lakewood", 110, 90, 80, 80, 3));
            hotelManager.AddHotel(new Hotel("Bridgewood", 160, 60, 110, 150, 4));
            hotelManager.AddHotel(new Hotel("Ridgewood", 110, 90, 100, 40, 5));
            List <Hotel> bestHotelsList = hotelManager.FindCheapestBestRatedHotel(start, end);

            string[] bestHotelsArray = bestHotelsList.Select(hotel => hotel.name).ToArray();

            CollectionAssert.AreEqual(expected, bestHotelsArray);
        }