public IHttpActionResult SearchByMultipleCriteria(AdvancedSearchRequestDto dto) { ISearchingCriterion <Offer>[] criteria = new[] { OffersSearchingCriteriaFactory.CreatePlaceSearchingCriterion(dto.PlaceName, dto.CityName), OffersSearchingCriteriaFactory.CreateDateSearchingCriterion(dto.MinimalDate, dto.MaximalDate), OffersSearchingCriteriaFactory.CreatePriceSearchingCriterion(dto.MinimalPrice, dto.MaximalPrice) }; return(Search(dto.Username, criteria, dto.SortType, dto.SortBy)); }
public void AdvancedSearchingTest1() { AdvancedSearchRequestDto dto = new AdvancedSearchRequestDto() { Username = "******", MinimalDate = new DateTime(2015, 12, 20), MinimalPrice = 300, PlaceName = "Pensjonat pod różą" }; }
public void AdvancedSearchingTest2() { AdvancedSearchRequestDto dto = new AdvancedSearchRequestDto() { Username = "******", MinimalDate = new DateTime(2015, 12, 20), MinimalPrice = 300, PlaceName = "Pensjonat pod różą", MaximalPrice = 301 }; IHttpActionResult result = _controller.SearchByMultipleCriteria(dto); var contentResult = result as OkNegotiatedContentResult <SearchResultDto>; Assert.IsNotNull(contentResult); Assert.IsNotNull(contentResult.Content); Assert.AreEqual(1, contentResult.Content.Offers.Count()); }
public async Task <IEnumerable <Offer> > SearchByMultipleCriteria(string username, string placeName, string cityName, DateTime?minimalDate, DateTime?maximalDate, double?minimalPrice, double?maximalPrice, SortType sortType, SortBy sortBy) { AdvancedSearchRequestDto dto = new AdvancedSearchRequestDto() { Username = username, PlaceName = placeName, CityName = cityName, MinimalDate = minimalDate, MaximalDate = maximalDate, MinimalPrice = minimalPrice, MaximalPrice = maximalPrice, SortBy = sortBy, SortType = sortType }; var res = await Post <AdvancedSearchRequestDto, SearchResultDto>("advanced", dto); return(res.Offers); }