Skip to content

Commit f547151

Browse files
committed
Change FlushAsync to SendEndOfMessageAsync
1 parent b571570 commit f547151

File tree

3 files changed

+15
-7
lines changed

3 files changed

+15
-7
lines changed

src/Transports.AspNetCore/WebSockets/WebSocketConnection.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ protected virtual Task OnDispatchMessageAsync(IOperationMessageProcessor operati
276276
protected virtual async Task OnSendMessageAsync(OperationMessage message)
277277
{
278278
await _serializer.WriteAsync(_stream, message, RequestAborted);
279-
await _stream.FlushAsync(RequestAborted);
279+
await _stream.SendEndOfMessageAsync(RequestAborted);
280280
}
281281

282282
/// <summary>

src/Transports.AspNetCore/WebSockets/WebSocketWriterStream.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,12 @@ public override ValueTask WriteAsync(ReadOnlyMemory<byte> buffer, CancellationTo
1919

2020
public override void Write(byte[] buffer, int offset, int count) => WriteAsync(buffer, offset, count).GetAwaiter().GetResult();
2121

22-
public override Task FlushAsync(CancellationToken cancellationToken)
23-
=> _webSocket.SendAsync(new ArraySegment<byte>(Array.Empty<byte>()), WebSocketMessageType.Text, true, cancellationToken);
22+
public override Task FlushAsync(CancellationToken cancellationToken) => Task.CompletedTask;
23+
24+
public override void Flush() { }
2425

25-
public override void Flush() => FlushAsync().GetAwaiter().GetResult();
26+
public Task SendEndOfMessageAsync(CancellationToken cancellationToken)
27+
=> _webSocket.SendAsync(new ArraySegment<byte>(Array.Empty<byte>()), WebSocketMessageType.Text, true, cancellationToken);
2628

2729
public override int Read(byte[] buffer, int offset, int count) => throw new NotSupportedException();
2830

tests/Transports.AspNetCore.Tests/WebSockets/WebSocketWriterStreamTests.cs

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,18 @@ public void Write()
5757
}
5858

5959
[Fact]
60-
public async Task FlushAsync()
60+
public async Task SendEndOfMessageAsync()
6161
{
6262
_mockWebSocket.Setup(x => x.SendAsync(new ArraySegment<byte>(Array.Empty<byte>(), 0, 0), WebSocketMessageType.Text, true, default))
6363
.Returns(Task.CompletedTask).Verifiable();
64+
await _stream.SendEndOfMessageAsync(default);
65+
_mockWebSocket.Verify();
66+
_mockWebSocket.VerifyNoOtherCalls();
67+
}
68+
69+
[Fact]
70+
public async Task FlushAsync()
71+
{
6472
await _stream.FlushAsync();
6573
_mockWebSocket.Verify();
6674
_mockWebSocket.VerifyNoOtherCalls();
@@ -69,8 +77,6 @@ public async Task FlushAsync()
6977
[Fact]
7078
public void Flush()
7179
{
72-
_mockWebSocket.Setup(x => x.SendAsync(new ArraySegment<byte>(Array.Empty<byte>(), 0, 0), WebSocketMessageType.Text, true, default))
73-
.Returns(Task.CompletedTask).Verifiable();
7480
_stream.Flush();
7581
_mockWebSocket.Verify();
7682
_mockWebSocket.VerifyNoOtherCalls();

0 commit comments

Comments
 (0)