Skip to content

Commit 760846d

Browse files
ariellourencoRehanSaeed
authored andcommitted
Add unit test for TaskCanceledException.
1 parent 0611a50 commit 760846d

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

Tests/Boxed.AspNetCore.Test/Middleware/RequestCanceledMiddlewareTest.cs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,25 @@ await Assert
5959
.ConfigureAwait(false);
6060
}
6161

62+
[Fact]
63+
public async Task InvokeAsync_TaskCanceledExceptionThrownNotCanceled_RunsNextMiddlewareAsync()
64+
{
65+
// Arrange
66+
using var cancellationTokenSource1 = new CancellationTokenSource();
67+
using var cancellationTokenSource2 = new CancellationTokenSource();
68+
69+
cancellationTokenSource2.Cancel();
70+
71+
this.context.RequestAborted = cancellationTokenSource1.Token;
72+
this.next = x => Task.FromException(new TaskCanceledException(Task.FromCanceled(cancellationTokenSource2.Token)));
73+
74+
// Act & Assert
75+
await Assert.ThrowsAsync<TaskCanceledException>(() =>
76+
new RequestCanceledMiddleware(this.next, new RequestCanceledMiddlewareOptions(), new Mock<ILogger<RequestCanceledMiddleware>>().Object)
77+
.InvokeAsync(this.context))
78+
.ConfigureAwait(false);
79+
}
80+
6281
[Fact]
6382
public async Task InvokeAsync_RequestCanceled_Returns499ClientClosedRequestAsync()
6483
{

0 commit comments

Comments
 (0)