U:调整所有代码格式
This commit is contained in:
1 parent
d133bacf55
commit
155b67e831
342 files changed
+9431
-9868
No files matched your search
@@ -7,17 +7,17 @@
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0"/>
|
||||
<PackageReference Include="MSTest" Version="3.6.4"/>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0"/>
|
||||
<PackageReference Include="MSTest" Version="3.6.4"/>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Using Include="Microsoft.VisualStudio.TestTools.UnitTesting"/>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Using Include="Microsoft.VisualStudio.TestTools.UnitTesting"/>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\src\Sharp\NetClient\NetClient.csproj" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\src\Sharp\NetClient\NetClient.csproj"/>
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
@@ -13,6 +13,8 @@ public sealed class StaticTokenProvider : IAccessTokenProvider
|
||||
_token = token;
|
||||
}
|
||||
|
||||
public Task<string?> GetTokenAsync(CancellationToken cancellationToken = default) => Task.FromResult(_token);
|
||||
}
|
||||
|
||||
public Task<string?> GetTokenAsync(CancellationToken cancellationToken = default)
|
||||
{
|
||||
return Task.FromResult(_token);
|
||||
}
|
||||
}
|
||||
@@ -18,15 +18,21 @@ public sealed class TestHttpMessageHandler : HttpMessageHandler
|
||||
_handler = handler;
|
||||
}
|
||||
|
||||
protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
|
||||
protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request,
|
||||
CancellationToken cancellationToken)
|
||||
{
|
||||
Interlocked.Increment(ref _calls);
|
||||
return await _handler(request);
|
||||
}
|
||||
|
||||
public static HttpResponseMessage Json(HttpStatusCode code, string json)
|
||||
=> new(code) { Content = new StringContent(json, System.Text.Encoding.UTF8, "application/json") };
|
||||
{
|
||||
return new HttpResponseMessage(code)
|
||||
{ Content = new StringContent(json, System.Text.Encoding.UTF8, "application/json") };
|
||||
}
|
||||
|
||||
public static HttpResponseMessage Text(HttpStatusCode code, string text)
|
||||
=> new(code) { Content = new StringContent(text) };
|
||||
}
|
||||
{
|
||||
return new HttpResponseMessage(code) { Content = new StringContent(text) };
|
||||
}
|
||||
}
|
||||
@@ -18,8 +18,12 @@ public sealed class TestJsonSerializer : IHttpContentSerializer
|
||||
public string ContentType => "application/json";
|
||||
|
||||
public Task SerializeAsync<T>(Stream stream, T? value, CancellationToken cancellationToken = default)
|
||||
=> JsonSerializer.SerializeAsync(stream, value, _options, cancellationToken);
|
||||
{
|
||||
return JsonSerializer.SerializeAsync(stream, value, _options, cancellationToken);
|
||||
}
|
||||
|
||||
public Task<T?> DeserializeAsync<T>(Stream stream, CancellationToken cancellationToken = default)
|
||||
=> JsonSerializer.DeserializeAsync<T>(stream, _options, cancellationToken).AsTask();
|
||||
}
|
||||
{
|
||||
return JsonSerializer.DeserializeAsync<T>(stream, _options, cancellationToken).AsTask();
|
||||
}
|
||||
}
|
||||
@@ -15,23 +15,19 @@ public class NamedClientFactoryTests
|
||||
{
|
||||
var services = new ServiceCollection();
|
||||
|
||||
services.AddNamedNetClient("catalog", opt =>
|
||||
{
|
||||
opt.BaseAddress = new Uri("https://catalog.test");
|
||||
}).ConfigurePrimaryHttpMessageHandler(() => new TestDoubles.TestHttpMessageHandler(req =>
|
||||
{
|
||||
StringAssert.StartsWith(req.RequestUri!.AbsoluteUri, "https://catalog.test");
|
||||
return Task.FromResult(TestDoubles.TestHttpMessageHandler.Text(HttpStatusCode.OK, "catalog"));
|
||||
}));
|
||||
services.AddNamedNetClient("catalog", opt => { opt.BaseAddress = new Uri("https://catalog.test"); })
|
||||
.ConfigurePrimaryHttpMessageHandler(() => new TestDoubles.TestHttpMessageHandler(req =>
|
||||
{
|
||||
StringAssert.StartsWith(req.RequestUri!.AbsoluteUri, "https://catalog.test");
|
||||
return Task.FromResult(TestDoubles.TestHttpMessageHandler.Text(HttpStatusCode.OK, "catalog"));
|
||||
}));
|
||||
|
||||
services.AddNamedNetClient("order", opt =>
|
||||
{
|
||||
opt.BaseAddress = new Uri("https://order.test");
|
||||
}).ConfigurePrimaryHttpMessageHandler(() => new TestDoubles.TestHttpMessageHandler(req =>
|
||||
{
|
||||
StringAssert.StartsWith(req.RequestUri!.AbsoluteUri, "https://order.test");
|
||||
return Task.FromResult(TestDoubles.TestHttpMessageHandler.Text(HttpStatusCode.OK, "order"));
|
||||
}));
|
||||
services.AddNamedNetClient("order", opt => { opt.BaseAddress = new Uri("https://order.test"); })
|
||||
.ConfigurePrimaryHttpMessageHandler(() => new TestDoubles.TestHttpMessageHandler(req =>
|
||||
{
|
||||
StringAssert.StartsWith(req.RequestUri!.AbsoluteUri, "https://order.test");
|
||||
return Task.FromResult(TestDoubles.TestHttpMessageHandler.Text(HttpStatusCode.OK, "order"));
|
||||
}));
|
||||
|
||||
var sp = services.BuildServiceProvider();
|
||||
var factory = sp.GetRequiredService<INetClientFactory>();
|
||||
@@ -45,5 +41,4 @@ public class NamedClientFactoryTests
|
||||
Assert.AreEqual("catalog", cRes);
|
||||
Assert.AreEqual("order", oRes);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -34,10 +34,12 @@ public class NetClientBasicTests
|
||||
var handler = new TestHttpMessageHandler(req =>
|
||||
{
|
||||
Assert.AreEqual(HttpMethod.Get, req.Method);
|
||||
Assert.AreEqual("https://example.com/api/echo", $"{req.RequestUri!.Scheme}://{req.RequestUri.Host}{req.RequestUri.AbsolutePath}");
|
||||
Assert.AreEqual("https://example.com/api/echo",
|
||||
$"{req.RequestUri!.Scheme}://{req.RequestUri.Host}{req.RequestUri.AbsolutePath}");
|
||||
var q = req.RequestUri!.Query.TrimStart('?').Split('&', StringSplitOptions.RemoveEmptyEntries);
|
||||
CollectionAssert.IsSubsetOf(new[] { "id=1", "name=foo" }, q);
|
||||
var json = $"{{\"method\":\"{req.Method}\",\"path\":\"{req.RequestUri!.AbsolutePath}\",\"query\":\"{req.RequestUri!.Query.TrimStart('?')}\",\"name\":\"foo\"}}";
|
||||
var json =
|
||||
$"{{\"method\":\"{req.Method}\",\"path\":\"{req.RequestUri!.AbsolutePath}\",\"query\":\"{req.RequestUri!.Query.TrimStart('?')}\",\"name\":\"foo\"}}";
|
||||
return Task.FromResult(TestHttpMessageHandler.Json(HttpStatusCode.OK, json));
|
||||
});
|
||||
|
||||
@@ -77,7 +79,8 @@ public class NetClientBasicTests
|
||||
[TestMethod]
|
||||
public async Task Error_Throws_ApiException_With_Content()
|
||||
{
|
||||
var handler = new TestHttpMessageHandler(req => Task.FromResult(TestHttpMessageHandler.Text(HttpStatusCode.InternalServerError, "oops")));
|
||||
var handler = new TestHttpMessageHandler(req =>
|
||||
Task.FromResult(TestHttpMessageHandler.Text(HttpStatusCode.InternalServerError, "oops")));
|
||||
var client = CreateClient(handler);
|
||||
|
||||
try
|
||||
@@ -91,4 +94,4 @@ public class NetClientBasicTests
|
||||
StringAssert.Contains(ex.ResponseContent ?? string.Empty, "oops");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -50,5 +50,4 @@ public class NetClientDiTests
|
||||
Assert.IsNotNull(capturedHandler);
|
||||
Assert.AreEqual(1, capturedHandler!.Calls);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -25,7 +25,8 @@ public class NetClientResultsTests
|
||||
public async Task GetResultAsync_Success_Returns_Result_With_Value()
|
||||
{
|
||||
var json = "{\"id\":1}";
|
||||
var handler = new TestHttpMessageHandler(_ => Task.FromResult(TestHttpMessageHandler.Json(HttpStatusCode.OK, json)));
|
||||
var handler =
|
||||
new TestHttpMessageHandler(_ => Task.FromResult(TestHttpMessageHandler.Json(HttpStatusCode.OK, json)));
|
||||
var client = CreateClient(handler);
|
||||
|
||||
var res = await client.GetResultAsync<Obj>("/obj");
|
||||
@@ -36,7 +37,8 @@ public class NetClientResultsTests
|
||||
[TestMethod]
|
||||
public async Task GetResultAsync_Failure_Maps_StatusCode_And_Message()
|
||||
{
|
||||
var handler = new TestHttpMessageHandler(_ => Task.FromResult(TestHttpMessageHandler.Text(HttpStatusCode.BadRequest, "bad req")));
|
||||
var handler = new TestHttpMessageHandler(_ =>
|
||||
Task.FromResult(TestHttpMessageHandler.Text(HttpStatusCode.BadRequest, "bad req")));
|
||||
var client = CreateClient(handler);
|
||||
|
||||
var res = await client.GetResultAsync<Obj>("/obj");
|
||||
@@ -48,7 +50,8 @@ public class NetClientResultsTests
|
||||
[TestMethod]
|
||||
public async Task DeleteResultAsync_Success_Returns_Success_Result()
|
||||
{
|
||||
var handler = new TestHttpMessageHandler(_ => Task.FromResult(TestHttpMessageHandler.Text(HttpStatusCode.NoContent, "")));
|
||||
var handler = new TestHttpMessageHandler(_ =>
|
||||
Task.FromResult(TestHttpMessageHandler.Text(HttpStatusCode.NoContent, "")));
|
||||
var client = CreateClient(handler);
|
||||
|
||||
var res = await client.DeleteResultAsync("/obj/1");
|
||||
@@ -56,5 +59,4 @@ public class NetClientResultsTests
|
||||
}
|
||||
|
||||
private sealed record Obj(int id);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -30,9 +30,7 @@ public class NetClientRetryTests
|
||||
{
|
||||
attempts++;
|
||||
if (attempts == 1)
|
||||
{
|
||||
return Task.FromResult(TestDoubles.TestHttpMessageHandler.Text(HttpStatusCode.TooManyRequests, "busy"));
|
||||
}
|
||||
return Task.FromResult(TestDoubles.TestHttpMessageHandler.Text(HttpStatusCode.OK, "ok"));
|
||||
}));
|
||||
|
||||
@@ -44,5 +42,4 @@ public class NetClientRetryTests
|
||||
Assert.AreEqual("ok", result);
|
||||
Assert.AreEqual(2, attempts);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in new issue
Block a user