Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[wasm][http] System.Net.Http.Functional.Tests.HttpClientTest - Expected: System.Threading.Tasks.TaskCanceledException #54270

Closed
pavelsavara opened this issue Jun 16, 2021 · 2 comments · Fixed by #55084
Assignees
Labels
arch-wasm WebAssembly architecture area-System.Net.Http
Milestone

Comments

@pavelsavara
Copy link
Member

pavelsavara commented Jun 16, 2021

Unit tests:

  • GetStreamAsync_CanBeCanceled_AlreadyCanceledCts
  • GetStringAsync_CanBeCanceled
  • GetStreamAsync_CanBeCanceled
  • GetByteArrayAsync_CanBeCanceled
  • GetByteArrayAsync_CanBeCanceled_AlreadyCanceledCts
  • GetStringAsync_CanBeCanceled_AlreadyCanceledCts
Assert.Throws() Failure
Expected: typeof(System.Threading.Tasks.TaskCanceledException)
Actual:   typeof(System.OperationCanceledException): The operation was canceled.
   at System.Net.Http.HttpClient.HandleFailure(Exception e, Boolean telemetryStarted, HttpResponseMessage response, CancellationTokenSource cts, CancellationToken cancellationToken, CancellationTokenSource pendingRequestsCts) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 618
   at System.Net.Http.HttpClient.GetStringAsyncCore(HttpRequestMessage request, CancellationToken cancellationToken) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 217
----- Inner Stack Trace -----
   at System.Net.Http.HttpClient.HandleFailure(Exception e, Boolean telemetryStarted, HttpResponseMessage response, CancellationTokenSource cts, CancellationToken cancellationToken, CancellationTokenSource pendingRequestsCts) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 618
   at System.Net.Http.HttpClient.GetStringAsyncCore(HttpRequestMessage request, CancellationToken cancellationToken) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 217

Test System.Net.Http.Functional.Tests.HttpClientTest.GetAsync_ContentCanBeCanceled

 Assert.Throws() Failure
 Expected: typeof(System.Threading.Tasks.TaskCanceledException)
 Actual:   typeof(System.ObjectDisposedException): The CancellationTokenSource has been disposed.
 ---- System.ObjectDisposedException : The CancellationTokenSource has been disposed.
    at System.Threading.CancellationTokenSource.ThrowIfDisposed() in C:\Dev\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\CancellationTokenSource.cs:line 485
    at System.Threading.CancellationTokenSource.Cancel(Boolean throwOnFirstException) in C:\Dev\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\CancellationTokenSource.cs:line 249
    at System.Threading.CancellationTokenSource.Cancel() in C:\Dev\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\CancellationTokenSource.cs:line 221
    at System.Net.Http.BrowserHttpHandler.WasmFetchResponse.Dispose() in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\BrowserHttpHandler\BrowserHttpHandler.cs:line 369
    at System.Net.Http.BrowserHttpHandler.BrowserHttpContent.Dispose(Boolean disposing) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\BrowserHttpHandler\BrowserHttpHandler.cs:line 434
    at System.Net.Http.HttpContent.Dispose() in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpContent.cs:line 689
    at System.Net.Http.HttpResponseMessage.Dispose(Boolean disposing) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpResponseMessage.cs:line 235
    at System.Net.Http.HttpResponseMessage.Dispose() in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpResponseMessage.cs:line 242
    at System.Net.Http.HttpClient.HandleFailure(Exception e, Boolean telemetryStarted, HttpResponseMessage response, CancellationTokenSource cts, CancellationToken cancellationToken, CancellationTokenSource pendingRequestsCts) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 583
    at System.Net.Http.HttpClient.GetStringAsyncCore(HttpRequestMessage request, CancellationToken cancellationToken) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 217
    at System.Net.Http.Functional.Tests.HttpClientTest.<>c__DisplayClass26_1.<<GetAsync_ContentCanBeCanceled>b__2>d.MoveNext() in C:\Dev\runtime\src\libraries\System.Net.Http\tests\FunctionalTests\HttpClientTest.cs:line 467
 --- End of stack trace from previous location ---
 ----- Inner Stack Trace -----
    at System.Threading.CancellationTokenSource.ThrowIfDisposed() in C:\Dev\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\CancellationTokenSource.cs:line 485
    at System.Threading.CancellationTokenSource.Cancel(Boolean throwOnFirstException) in C:\Dev\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\CancellationTokenSource.cs:line 249
    at System.Threading.CancellationTokenSource.Cancel() in C:\Dev\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\CancellationTokenSource.cs:line 221
    at System.Net.Http.BrowserHttpHandler.WasmFetchResponse.Dispose() in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\BrowserHttpHandler\BrowserHttpHandler.cs:line 369
    at System.Net.Http.BrowserHttpHandler.BrowserHttpContent.Dispose(Boolean disposing) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\BrowserHttpHandler\BrowserHttpHandler.cs:line 434
    at System.Net.Http.HttpContent.Dispose() in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpContent.cs:line 689
    at System.Net.Http.HttpResponseMessage.Dispose(Boolean disposing) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpResponseMessage.cs:line 235
    at System.Net.Http.HttpResponseMessage.Dispose() in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpResponseMessage.cs:line 242
    at System.Net.Http.HttpClient.HandleFailure(Exception e, Boolean telemetryStarted, HttpResponseMessage response, CancellationTokenSource cts, CancellationToken cancellationToken, CancellationTokenSource pendingRequestsCts) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 583
    at System.Net.Http.HttpClient.GetStringAsyncCore(HttpRequestMessage request, CancellationToken cancellationToken) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 217
    at System.Net.Http.Functional.Tests.HttpClientTest.<>c__DisplayClass26_1.<<GetAsync_ContentCanBeCanceled>b__2>d.MoveNext() in C:\Dev\runtime\src\libraries\System.Net.Http\tests\FunctionalTests\HttpClientTest.cs:line 467
@pavelsavara pavelsavara added arch-wasm WebAssembly architecture area-System.Net.Http labels Jun 16, 2021
@ghost
Copy link

ghost commented Jun 16, 2021

Tagging subscribers to this area: @dotnet/ncl
See info in area-owners.md if you want to be subscribed.

Issue Details

Unit tests:

  • GetStreamAsync_CanBeCanceled_AlreadyCanceledCts
  • GetStringAsync_CanBeCanceled
  • GetStreamAsync_CanBeCanceled
  • GetByteArrayAsync_CanBeCanceled
  • GetByteArrayAsync_CanBeCanceled_AlreadyCanceledCts
  • GetStringAsync_CanBeCanceled_AlreadyCanceledCts
Assert.Throws() Failure
Expected: typeof(System.Threading.Tasks.TaskCanceledException)
Actual:   typeof(System.OperationCanceledException): The operation was canceled.
   at System.Net.Http.HttpClient.HandleFailure(Exception e, Boolean telemetryStarted, HttpResponseMessage response, CancellationTokenSource cts, CancellationToken cancellationToken, CancellationTokenSource pendingRequestsCts) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 618
   at System.Net.Http.HttpClient.GetStringAsyncCore(HttpRequestMessage request, CancellationToken cancellationToken) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 217
----- Inner Stack Trace -----
   at System.Net.Http.HttpClient.HandleFailure(Exception e, Boolean telemetryStarted, HttpResponseMessage response, CancellationTokenSource cts, CancellationToken cancellationToken, CancellationTokenSource pendingRequestsCts) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 618
   at System.Net.Http.HttpClient.GetStringAsyncCore(HttpRequestMessage request, CancellationToken cancellationToken) in C:\Dev\runtime\src\libraries\System.Net.Http\src\System\Net\Http\HttpClient.cs:line 217
Author: pavelsavara
Assignees: -
Labels:

arch-wasm, area-System.Net.Http

Milestone: -

@dotnet-issue-labeler dotnet-issue-labeler bot added the untriaged New issue has not been triaged by the area owner label Jun 16, 2021
@danmoseley
Copy link
Member

Curious why the inner exception stack is identical, or whether ToString() is doing something wrong.

@lewing lewing added this to the 6.0.0 milestone Jun 16, 2021
@lewing lewing removed the untriaged New issue has not been triaged by the area owner label Jun 16, 2021
@ghost ghost added the in-pr There is an active PR which will close this issue when it is merged label Jul 2, 2021
@ghost ghost removed the in-pr There is an active PR which will close this issue when it is merged label Jul 13, 2021
@ghost ghost locked as resolved and limited conversation to collaborators Aug 12, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-wasm WebAssembly architecture area-System.Net.Http
Projects
None yet
3 participants