File tree Expand file tree Collapse file tree 1 file changed +16
-8
lines changed Expand file tree Collapse file tree 1 file changed +16
-8
lines changed Original file line number Diff line number Diff line change @@ -45,20 +45,28 @@ public void Handle_WithException_CaptureEvent()
4545 public void Handle_UnobservedTaskException_CaptureEvent ( )
4646 {
4747 _fixture . AppDomain = AppDomainAdapter . Instance ;
48- var evt = new ManualResetEvent ( false ) ;
48+ var captureCalledEvent = new ManualResetEvent ( false ) ;
4949 _fixture . Hub . When ( x => x . CaptureEvent ( Arg . Any < SentryEvent > ( ) ) )
50- . Do ( _ => evt . Set ( ) ) ;
50+ . Do ( _ => captureCalledEvent . Set ( ) ) ;
5151
5252 var sut = _fixture . GetSut ( ) ;
5353 sut . Register ( _fixture . Hub , SentryOptions ) ;
5454 try
5555 {
56- Task . Factory . StartNew ( ( ) => { throw new Exception ( "Unhandled on Task" ) ; } ) ;
57- Thread . Sleep ( 2000 ) ;
58- GC . Collect ( ) ;
59- GC . WaitForPendingFinalizers ( ) ;
60-
61- Assert . True ( evt . WaitOne ( TimeSpan . FromMilliseconds ( 1 ) ) ) ;
56+ var taskStartedEvent = new ManualResetEvent ( false ) ;
57+ _ = Task . Run ( ( ) =>
58+ {
59+ taskStartedEvent . Set ( ) ;
60+ throw new Exception ( "Unhandled on Task" ) ;
61+ } ) ;
62+ Assert . True ( taskStartedEvent . WaitOne ( TimeSpan . FromSeconds ( 1 ) ) ) ;
63+ var counter = 0 ;
64+ do
65+ {
66+ Assert . True ( counter ++ < 5 ) ;
67+ GC . Collect ( ) ;
68+ GC . WaitForPendingFinalizers ( ) ;
69+ } while ( ! captureCalledEvent . WaitOne ( TimeSpan . FromMilliseconds ( 100 ) ) ) ;
6270 }
6371 finally
6472 {
You can’t perform that action at this time.
0 commit comments