public async Task GetHackerNewsStories() { try { List <int> stories = await _service.GetHackerNewsStories(HackerNewsEnums.StoryType.newstories); Assert.IsTrue(stories.Count > 0, "Retrieved New Stories"); stories = await _service.GetHackerNewsStories(HackerNewsEnums.StoryType.askstories); Assert.IsTrue(stories.Count > 0, "Retrieved Ask Stories"); stories = await _service.GetHackerNewsStories(HackerNewsEnums.StoryType.beststories); Assert.IsTrue(stories.Count > 0, "Retrieved Best Stories"); stories = await _service.GetHackerNewsStories(HackerNewsEnums.StoryType.topstories); Assert.IsTrue(stories.Count > 0, "Retrieved Top Stories"); } catch (AssertFailedException ex) { Assert.Fail(ex.Message); } }
public async Task <IActionResult> GetStories([FromRoute] string storyType) { if (Enum.IsDefined(typeof(HackerNewsEnums.StoryType), storyType)) { var itemList = await _service.GetHackerNewsStories((HackerNewsEnums.StoryType) Enum.Parse(typeof(HackerNewsEnums.StoryType), storyType)); var stories = await _service.GetHackerNewsItemDetails(itemList); return(Ok(stories)); } else { return(BadRequest("Story Typoe does not exist.")); } }
public async Task <IActionResult> GetStoriesAndDetails([FromRoute] string storyType, [FromQuery] int iteration = 1, [FromQuery] int requestSize = 30) { if (Enum.IsDefined(typeof(HackerNewsEnums.StoryType), storyType)) { var itemList = await _service.GetHackerNewsStories((HackerNewsEnums.StoryType) Enum.Parse(typeof(HackerNewsEnums.StoryType), storyType)); itemList = itemList.Skip((iteration - 1) * requestSize).Take(requestSize).ToList(); var stories = await _service.GetHackerNewsItemDetailsV2(itemList); return(Ok(stories)); } else { return(BadRequest("Story Typoe does not exist.")); } }