コード例 #1
0
        public async Task GetItemAsyncWithItems()
        {
            // arrange
            string testJson = JsonConvert.SerializeObject(_testItems[1]);

            var mockMessageHandler = new Mock <HttpMessageHandler>();

            mockMessageHandler.Protected()
            .Setup <Task <HttpResponseMessage> >("SendAsync", ItExpr.IsAny <HttpRequestMessage>(), ItExpr.IsAny <CancellationToken>())
            .Returns(Task.FromResult(new HttpResponseMessage
            {
                StatusCode = HttpStatusCode.OK,
                Content    = new StringContent(testJson)
            }));
            var httpClient = new HttpClient(mockMessageHandler.Object);

            AnItem item = await HttpClientExtensions.GetItemAsync <AnItem>(httpClient, "https://www.cninnovation.com");

            Assert.Equal("second", item.Text);
        }