main
wanggaofeng 8 months ago
parent 198b90bda3
commit 9000891f52

@ -1,10 +1,8 @@
using System.Net.Http.Headers;
using System.Net;
using System.Net.Http.Json;
using System.Net.Http;
using System.Net.Mime;
using System.Net;
namespace HttpClientStudy.Core
namespace HttpClientStudy.UnitTest.HttpClients
{
/// <summary>
/// 简单 HttpClient 包装类

@ -1,38 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Extensions.Logging;
namespace HttpClientStudy.UnitTest
{
public class DelegatingHandlerTest
{
private readonly ITestOutputHelper _logger;
public DelegatingHandlerTest(ITestOutputHelper outputHelper)
{
_logger = outputHelper;
}
[Fact]
public async Task Test()
{
//构建管道
var handler = new HandlerA()
{
//相当于下一个中间件(管道)
InnerHandler = new HandlerB()
};
HttpClient httpClient = new HttpClient(handler);
var sd = await httpClient.GetAsync(TestConfig.WebApiBaseUrl + "/api/");
var contentText = await sd.Content.ReadAsStringAsync();
_logger.WriteLine(contentText);
}
}
}

@ -1,8 +1,14 @@
global using System;
global using System.Collections.Generic;
global using System.Linq;
global using System.Text;
global using System.Threading.Tasks;
global using System.Collections.Generic;
global using System.Net;
global using System.Net.Mime;
global using System.Net.Http;
global using System.Net.Http.Json;
global using System.Net.Http.Headers;
global using Xunit;
global using Xunit.Sdk;

@ -8,17 +8,42 @@ namespace HttpClientStudy.UnitTest.HttpClients
{
public class PipelineClientTest
{
public PipelineClientTest() { }
private readonly ITestOutputHelper _logger;
public PipelineClientTest(ITestOutputHelper outputHelper)
{
_logger = outputHelper;
}
/// <summary>
/// 手动处理
/// </summary>
[Fact]
public async Task Test()
public async Task Delegating_Test()
{
HttpClient client = new PipelineHttpClient().CreateHttpClient();
//构建管道
var handler = new HandlerA()
{
//相当于下一个中间件(管道)
InnerHandler = new HandlerB()
};
var r = await client.GetAsync("https://www.baidu.com");
r.EnsureSuccessStatusCode();
//构造中传入管道对象
HttpClient httpClient = new HttpClient(handler);
var sd = await httpClient.GetAsync(TestConfig.WebApiBaseUrl + "/api/account/ping");
var contentText = await sd.Content.ReadAsStringAsync();
_logger.WriteLine(contentText);
}
[Fact]
public async Task CreateHttpClient_Test()
{
HttpClient client = new PipelineHttpClient().CreateHttpClient();
var r = await client.GetAsync(TestConfig.WebApiBaseUrl + "/api/account/ping");
r.EnsureSuccessStatusCode();
}
}
}

@ -5,17 +5,17 @@ namespace HttpClientStudy.UnitTest
/// <summary>
/// 使用 xUnit 单元测试框架
/// </summary>
public class UseXunitTest
public class UseXUnitTest
{
private readonly ITestOutputHelper _logger;
public UseXunitTest(ITestOutputHelper outputHelper)
public UseXUnitTest(ITestOutputHelper outputHelper)
{
_logger = outputHelper;
}
[Fact]
public void UseXunit_Test()
public void UseXUnit_Test()
{
_logger.WriteLine("使用 xUnit 单元测试框架!");
Assert.True(true,"使用 xUnit");

@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HttpClientStudy.UnitTest.WebApp
{
/// <summary>
/// 测试工具类
/// </summary>
public class WebAppUtils
{
}
}
Loading…
Cancel
Save