public async Task ReceiveJsonAsync_GetJsonWith401_ThrowsException() { var expectedData = new HttpTestDataObject { TestProperty = "TestValue" }; var mockHttpClientContext = new MockHttpClientContext(); mockHttpClientContext .Respond() .ReturnJson(expectedData, HttpStatusCode.Unauthorized); var client = mockHttpClientContext.CreateClient(); await Assert.ThrowsAsync <HttpRequestException>(() => client .GetAsync(new Uri("http://test.com")) .ReceiveJsonAsync <HttpTestDataObject>()); }
public async Task ReceiveJsonAsync_GetJson_ReturnsTestData() { var expectedData = new HttpTestDataObject { TestProperty = "TestValue" }; var mockHttpClientContext = new MockHttpClientContext(); mockHttpClientContext .Respond() .ReturnJson(expectedData); var client = mockHttpClientContext.CreateClient(); var result = await client .GetAsync(new Uri("http://test.com")) .ReceiveJsonAsync <HttpTestDataObject>(); Assert.Single(mockHttpClientContext.RecordedRequests); Assert.Equal(expectedData.TestProperty, result.TestProperty); }