Skip to content

Commit 82a93f4

Browse files
committed
refactor(tests): 使用异步方法关闭连接
在 TcpSocketFactoryTest.cs 和 TouchSocketTest.cs 中,将连接关闭逻辑从 client.Close() 更改为 await client.CloseAsync(string.Empty),以支持异步关闭连接并提高性能
1 parent 859b0cc commit 82a93f4

File tree

2 files changed

+12
-9
lines changed

2 files changed

+12
-9
lines changed

test/UnitTest/Services/TcpSocketFactoryTest.cs

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,20 +13,20 @@ namespace UnitTest.Services;
1313
public class TcpSocketFactoryTest
1414
{
1515
[Fact]
16-
public void GetOrCreate_Ok()
16+
public async Task GetOrCreate_Ok()
1717
{
1818
// 测试 GetOrCreate 方法创建的 Client 销毁后继续 GetOrCreate 得到的对象是否可用
1919
var sc = new ServiceCollection();
2020
sc.AddLogging(builder =>
2121
{
2222
builder.AddProvider(new MockLoggerProvider());
2323
});
24-
sc.AddBootstrapBlazorTcpSocketFactory();
25-
24+
//sc.AddBootstrapBlazorTcpSocketFactory();
25+
sc.AddBootstrapBlazorTouchSocketService();
2626
var provider = sc.BuildServiceProvider();
2727
var factory = provider.GetRequiredService<ITcpSocketFactory>();
2828
var client1 = factory.GetOrCreate("localhost", 0);
29-
client1.Close();
29+
await client1.CloseAsync(string.Empty);
3030

3131
var client2 = factory.GetOrCreate("localhost", 0);
3232
Assert.Equal(client1, client2);
@@ -226,7 +226,7 @@ public async Task FixLengthDataPackageHandler_Ok()
226226
await Task.Delay(10);
227227

228228
// 关闭连接
229-
client.Close();
229+
await client.CloseAsync(string.Empty);
230230
StopTcpServer(server);
231231
}
232232

@@ -281,7 +281,7 @@ public async Task FixLengthDataPackageHandler_Sticky()
281281
Assert.Equal(receivedBuffer.ToArray(), [3, 2, 3, 4, 5, 6, 7]);
282282

283283
// 关闭连接
284-
client.Close();
284+
await client.CloseAsync(string.Empty);
285285
StopTcpServer(server);
286286
}
287287

@@ -328,7 +328,7 @@ public async Task DelimiterDataPackageHandler_Ok()
328328
Assert.Equal(receivedBuffer.ToArray(), [5, 6, 0x13, 0x10]);
329329

330330
// 关闭连接
331-
client.Close();
331+
await client.CloseAsync(string.Empty);
332332
StopTcpServer(server);
333333

334334
var handler = new DelimiterDataPackageHandler("\r\n");
@@ -495,7 +495,10 @@ class MockSendErrorHandler : DataPackageHandlerBase
495495

496496
public override async ValueTask<ReadOnlyMemory<byte>> SendAsync(ReadOnlyMemory<byte> data)
497497
{
498-
Socket?.Close();
498+
if (Socket!=null)
499+
{
500+
await Socket.CloseAsync(string.Empty);
501+
}
499502
await Task.Delay(10);
500503
return data;
501504
}

test/UnitTest/Services/TouchSocketTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public async Task FixLengthDataPackageHandler_Ok()
4949
await Task.Delay(10);
5050

5151
// 关闭连接
52-
client.Close();
52+
await client.CloseAsync(string.Empty);
5353
StopTcpServer(server);
5454
}
5555

0 commit comments

Comments
 (0)