public async Task GivenGetToScreenshots_WhenNoScreenshotsReturned_AnEmptyResponseShouldBeReturned() { GetScreenshotsQuery.Execute(CancellationToken.None).Returns(_screenshots); var response = await Client.GetAsync("/api/screenshots"); response.StatusCode.ShouldBe(HttpStatusCode.OK); var screenshotResponse = await DeserializeResponse <ScreenshotsResponse>(response); screenshotResponse.Screenshots.ShouldBeEmpty(); screenshotResponse.Count.ShouldBe(0); }
public async Task GivenGetToScreenshots_WhenScreenshotsReturned_ResponseShouldContainScreenshots() { _screenshots.Add(CreateScreenshot(new byte[] { 1 }, "http://abc.se")); _screenshots.Add(CreateScreenshot(new byte[] { 2 }, "http://def.gh")); GetScreenshotsQuery.Execute(CancellationToken.None).Returns(_screenshots); var response = await Client.GetAsync("/api/screenshots"); response.StatusCode.ShouldBe(HttpStatusCode.OK); var screenshotResponse = await DeserializeResponse <ScreenshotsResponse>(response); var screenshots = screenshotResponse.Screenshots.ToList(); screenshots.Count.ShouldBe(_screenshots.Count); screenshots[0].Data.ShouldBe(_screenshots[0].Data); screenshots[0].Url.ShouldBe(_screenshots[0].Url); screenshots[1].Data.ShouldBe(_screenshots[1].Data); screenshots[1].Url.ShouldBe(_screenshots[1].Url); screenshotResponse.Count.ShouldBe(_screenshots.Count); }