public GetMemesSubGalleryAsync ( MemesGallerySortOrder sort = MemesGallerySortOrder.Viral, TimeWindow window = TimeWindow.Week, int page = null ) : Task |
||
sort | MemesGallerySortOrder | The order that the gallery should be sorted by. Default: Viral |
window | TimeWindow | The time period that should be used in filtering requests. Default: Week |
page | int | The data paging number. Default: null |
return | Task |
public async Task<IEnumerable<IGalleryItem>> GetMemesSubGalleryAsync(
MemesGallerySortOrder? sort = MemesGallerySortOrder.Viral,
TimeWindow? window = TimeWindow.Week, int? page = null)
{
sort = sort ?? MemesGallerySortOrder.Viral;
window = window ?? TimeWindow.Week;
var sortValue = $"{sort}".ToLower();
var windowValue = $"{window}".ToLower();
var url = $"g/memes/{sortValue}/{windowValue}/{page}";
using (var request = RequestBuilder.CreateRequest(HttpMethod.Get, url))
{
var gallery = await SendRequestAsync<IEnumerable<GalleryItem>>(request).ConfigureAwait(false);
return gallery;
}
}
public async Task GetMemesSubGalleryAsync_DefaultParameters_Any() { var mockUrl = "https://api.imgur.com/3/g/memes/viral/week/"; var mockResponse = new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(MockGalleryEndpointResponses.GetMemesSubGallery) }; var client = new ImgurClient("123", "1234"); var endpoint = new GalleryEndpoint(client, new HttpClient(new MockHttpMessageHandler(mockUrl, mockResponse))); var gallery = await endpoint.GetMemesSubGalleryAsync().ConfigureAwait(false); Assert.True(gallery.Any()); }