public async Task GetRestaurantOverviewList_AllAvailable_OnOnePage_SortBy(RestaurantSortBy sortBy) { using (var dbContext = CreateDbContext()) { //Arrange int restaurantsCount = TestSeedService.Restaurants.Count; var search = new RestaurantSearchDto { NameOrShortDescriptionOrCity = "", SortBy = sortBy.ToString(), PageSize = restaurantsCount, PageNumber = 1, }; var orderedRestaurantList = TestSeedService.Restaurants.SortByAll(sortBy); var repository = helper.CreateRestaurantRepository(dbContext); //Act var restaurantPagedList = await repository.GetRestaurantOverviewList(search); //Assert Assert.Equal(restaurantsCount, restaurantPagedList.TotalItemCount); Assert.Equal(1, restaurantPagedList.PageCount); Assert.True(restaurantPagedList.Result.First().Name == orderedRestaurantList.First().Name); Assert.True(restaurantPagedList.Result.Last().Name == orderedRestaurantList.Last().Name); } }
public async Task GetRestaurantOverviewList_AllAvailable_OnOnePage_SortBy(RestaurantSortBy sortBy) { //Arrange int restaurantsCount = TestSeedService.Restaurants.Count; var search = new RestaurantSearchDto { NameOrShortDescriptionOrCity = "", SortBy = sortBy.ToString(), PageSize = restaurantsCount, PageNumber = 1, }; var orderedRestaurantList = TestSeedService.Restaurants.SortByAll(sortBy); var client = webApiServer.CreateClient(); //Act var restaurantOverviewListResponse = await client.GetAsync("/api/restaurant?" + search.ToQueryParams()); var restaurantPagedList = await restaurantOverviewListResponse.Content.ReadFromJsonAsync <PagedListDto <RestaurantOverviewDto> >(); //Assert Assert.Equal(HttpStatusCode.OK, restaurantOverviewListResponse.StatusCode); Assert.Equal(TestSeedService.Restaurants.Count, restaurantPagedList.TotalItemCount); Assert.Equal(1, restaurantPagedList.PageCount); Assert.True(restaurantPagedList.Result.First().Name == orderedRestaurantList.First().Name); Assert.True(restaurantPagedList.Result.Last().Name == orderedRestaurantList.Last().Name); }
public async Task GetGuestFavouriteRestaurantList_CarsonFavourites_OnOnePage_SortBy(RestaurantSortBy sortBy) { using (var dbContext = CreateDbContext()) { //Arrange string carsonUserId = TestSeedService.Users[0].Id; var search = new RestaurantSearchDto { NameOrShortDescriptionOrCity = "", SortBy = sortBy.ToString(), PageSize = TestSeedService.Restaurants.Count, PageNumber = 1, }; var orderedRestaurantList = TestSeedService.Restaurants.SortByCarsonFavourite(sortBy); var repository = helper.CreateRestaurantRepository(dbContext); //Act var restaurantPagedList = await repository.GetGuestFavouriteRestaurantList(carsonUserId, search); //Assert Assert.Equal(2, restaurantPagedList.TotalItemCount); Assert.Equal(1, restaurantPagedList.PageCount); Assert.True(restaurantPagedList.Result.First().Name == orderedRestaurantList.First().Name); Assert.True(restaurantPagedList.Result.Last().Name == orderedRestaurantList.Last().Name); } }
public async Task GetGuestFavouriteRestaurantList_CarsonFavourites_OnOnePage_SortBy(RestaurantSortBy sortBy) { //Arrange int restaurantsCount = TestSeedService.Restaurants.Count; var search = new RestaurantSearchDto { NameOrShortDescriptionOrCity = "", SortBy = sortBy.ToString(), PageSize = restaurantsCount, PageNumber = 1, }; var orderedRestaurantList = TestSeedService.Restaurants.SortByCarsonFavourite(sortBy); var accessToken = await authServer.GetAccessToken("*****@*****.**", "Test.54321"); //Vendég felhasználó var client = webApiServer.CreateClient(); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken); //Act var favouriteRestaurantListResponse = await client.GetAsync("/api/restaurant/favourite?" + search.ToQueryParams()); var restaurantPagedList = await favouriteRestaurantListResponse.Content.ReadFromJsonAsync <PagedListDto <RestaurantOverviewDto> >(); //Assert Assert.Equal(HttpStatusCode.OK, favouriteRestaurantListResponse.StatusCode); Assert.Equal(2, restaurantPagedList.TotalItemCount); Assert.Equal(1, restaurantPagedList.PageCount); Assert.True(restaurantPagedList.Result.First().Name == orderedRestaurantList.First().Name); Assert.True(restaurantPagedList.Result.Last().Name == orderedRestaurantList.Last().Name); }
public static IReadOnlyList <Restaurant> SortByCarsonFavourite(this IReadOnlyList <Restaurant> r, RestaurantSortBy sortBy) { switch (sortBy) { case RestaurantSortBy.NAME_ASC: return(new List <Restaurant>() { r[0], r[1] }); case RestaurantSortBy.NAME_DESC: return(new List <Restaurant>() { r[1], r[0] }); case RestaurantSortBy.RATING_ASC: return(new List <Restaurant>() { r[1], r[0] }); case RestaurantSortBy.RATING_DESC: return(new List <Restaurant>() { r[0], r[1] }); case RestaurantSortBy.REVIEW_COUNT_ASC: return(new List <Restaurant>() { r[1], r[0] }); case RestaurantSortBy.REVIEW_COUNT_DESC: return(new List <Restaurant>() { r[0], r[1] }); default: return(r); } }