Exemplo n.º 1
0
        public List <Hotel> Filter(List <Hotel> hotels, Commons.Entities.HotelFilter filter)
        {
            HotelFilters hotelFilter = new HotelFilters();

            if (filter.Rating != null)
            {
                hotelFilter.FilterByRating(hotels, filter.Rating);
            }

            return(hotels);
        }
Exemplo n.º 2
0
        //public IEnumerable<string> GetAllGameGenres(string hotelId)
        //{
        //    var hotel = _hotelRepository.FirstOrDefault(a => a.Key == hotelId);
        //    var genres = new List<string>();

        //    foreach (GameGenre genre in hotel.GameGenres)
        //    {
        //        var genreEntity = _genreRepository.FirstOrDefault(a => a.Id == genre.GenreId);
        //        genres.Add(genreEntity.Name);
        //    }

        //    return genres;
        //}

        public HotelFilters ProcessFiltering(FilterDataModel filters)
        {
            var hotelsFilters = new HotelFilters {
                Filters = filters
            };
            var hotelPipelineExpression = new GamePipelineBuilder(filters).WithSearchFilter()
                                          .WithGamePriceFilter().WithGameRoomFilter().WithGameReleaseDateFilter().Build();
            var hotels = GetAllHotels(filters.SortType, _language, filter: hotelPipelineExpression, skip: (filters.CurrentPage - 1) * filters.ItemsPerPage, take: filters.ItemsPerPage);

            filters.TotalPages   = GetTotalPages(_hotelRepository.Count(hotelPipelineExpression), filters.ItemsPerPage);
            hotelsFilters.Hotels = hotels;

            return(hotelsFilters);
        }
Exemplo n.º 3
0
        public void HotelFilterByRatingTests()
        {
            HotelSearchByCityName hotelSearchByCity = new HotelSearchByCityName();

            hotelSearchByCity.CityName = "goa";

            HotelResponse hotelResponse = hotelSearchByCity.GetHotels();

            int count = hotelResponse.Hotels.Count;

            HotelFilters hotelFilter = new HotelFilters();

            hotelFilter.FilterByRating(hotelResponse.Hotels, "4");

            Assert.AreNotEqual(hotelResponse.Hotels.Count, count);
        }