@@ -12,51 +12,55 @@ describe('AsyncTaggingConsoleTest', () => {
1212 const AsyncStackTaggingZoneSpec = ( Zone as any ) [ 'AsyncStackTaggingZoneSpec' ] ;
1313
1414 describe ( 'should call console async stack tagging API' , ( ) => {
15- let idx = 1 ;
16- const scheduleAsyncTaskSpy = jasmine . createSpy ( 'scheduleAsyncTask' ) . and . callFake ( ( ) => {
17- return idx ++ ;
18- } ) ;
1915 const startAsyncTaskSpy = jasmine . createSpy ( 'startAsyncTask' ) ;
2016 const finishAsyncTaskSpy = jasmine . createSpy ( 'finishAsyncTask' ) ;
21- const cancelAsyncTaskSpy = jasmine . createSpy ( 'cancelAsyncTask' ) ;
17+ const scheduleAsyncTaskSpy = jasmine . createSpy ( 'scheduleAsyncTask' ) . and . callFake ( ( ) => {
18+ return {
19+ run : ( f : ( ) => unknown ) => {
20+ startAsyncTaskSpy ( ) ;
21+ const retval = f ( ) ;
22+ finishAsyncTaskSpy ( ) ;
23+ return retval ;
24+ } ,
25+ } ;
26+ } ) ;
27+
2228 let asyncStackTaggingZone : Zone ;
2329
2430 beforeEach ( ( ) => {
2531 scheduleAsyncTaskSpy . calls . reset ( ) ;
2632 startAsyncTaskSpy . calls . reset ( ) ;
2733 finishAsyncTaskSpy . calls . reset ( ) ;
28- cancelAsyncTaskSpy . calls . reset ( ) ;
2934 asyncStackTaggingZone = Zone . current . fork ( new AsyncStackTaggingZoneSpec ( 'test' , {
30- scheduleAsyncTask : scheduleAsyncTaskSpy ,
31- startAsyncTask : startAsyncTaskSpy ,
32- finishAsyncTask : finishAsyncTaskSpy ,
33- cancelAsyncTask : cancelAsyncTaskSpy ,
35+ createTask : scheduleAsyncTaskSpy ,
3436 } ) ) ;
3537 } ) ;
38+
3639 it ( 'setTimeout' , ( done : DoneFn ) => {
3740 asyncStackTaggingZone . run ( ( ) => {
3841 setTimeout ( ( ) => { } ) ;
3942 } ) ;
4043 setTimeout ( ( ) => {
41- expect ( scheduleAsyncTaskSpy ) . toHaveBeenCalledWith ( 'setTimeout' , false ) ;
44+ expect ( scheduleAsyncTaskSpy ) . toHaveBeenCalledWith ( 'Zone - setTimeout' ) ;
4245 expect ( startAsyncTaskSpy . calls . count ( ) ) . toBe ( 1 ) ;
4346 expect ( finishAsyncTaskSpy . calls . count ( ) ) . toBe ( 1 ) ;
4447 done ( ) ;
4548 } ) ;
4649 } ) ;
50+
4751 it ( 'clearTimeout' , ( done : DoneFn ) => {
4852 asyncStackTaggingZone . run ( ( ) => {
4953 const id = setTimeout ( ( ) => { } ) ;
5054 clearTimeout ( id ) ;
5155 } ) ;
5256 setTimeout ( ( ) => {
53- expect ( scheduleAsyncTaskSpy ) . toHaveBeenCalledWith ( 'setTimeout' , false ) ;
57+ expect ( scheduleAsyncTaskSpy ) . toHaveBeenCalledWith ( 'Zone - setTimeout' ) ;
5458 expect ( startAsyncTaskSpy ) . not . toHaveBeenCalled ( ) ;
5559 expect ( finishAsyncTaskSpy ) . not . toHaveBeenCalled ( ) ;
56- expect ( cancelAsyncTaskSpy . calls . count ( ) ) . toBe ( 1 ) ;
5760 done ( ) ;
5861 } ) ;
5962 } ) ;
63+
6064 it ( 'setInterval' , ( done : DoneFn ) => {
6165 asyncStackTaggingZone . run ( ( ) => {
6266 let count = 0 ;
@@ -68,19 +72,19 @@ describe('AsyncTaggingConsoleTest', () => {
6872 } , 10 ) ;
6973 } ) ;
7074 setTimeout ( ( ) => {
71- expect ( scheduleAsyncTaskSpy ) . toHaveBeenCalledWith ( 'setInterval' , true ) ;
75+ expect ( scheduleAsyncTaskSpy ) . toHaveBeenCalledWith ( 'Zone - setInterval' ) ;
7276 expect ( startAsyncTaskSpy . calls . count ( ) ) . toBe ( 2 ) ;
73- expect ( finishAsyncTaskSpy . calls . count ( ) ) . toBe ( 1 ) ;
74- expect ( cancelAsyncTaskSpy . calls . count ( ) ) . toBe ( 1 ) ;
77+ expect ( finishAsyncTaskSpy . calls . count ( ) ) . toBe ( 2 ) ;
7578 done ( ) ;
7679 } , 50 ) ;
7780 } ) ;
81+
7882 it ( 'Promise' , ( done : DoneFn ) => {
7983 asyncStackTaggingZone . run ( ( ) => {
8084 Promise . resolve ( 1 ) . then ( ( ) => { } ) ;
8185 } ) ;
8286 setTimeout ( ( ) => {
83- expect ( scheduleAsyncTaskSpy ) . toHaveBeenCalledWith ( 'Promise.then' , false ) ;
87+ expect ( scheduleAsyncTaskSpy ) . toHaveBeenCalledWith ( 'Zone - Promise.then' ) ;
8488 expect ( startAsyncTaskSpy . calls . count ( ) ) . toBe ( 1 ) ;
8589 expect ( finishAsyncTaskSpy . calls . count ( ) ) . toBe ( 1 ) ;
8690 done ( ) ;
@@ -94,12 +98,10 @@ describe('AsyncTaggingConsoleTest', () => {
9498 Zone . root . run ( ( ) => {
9599 setTimeout ( ( ) => {
96100 expect ( scheduleAsyncTaskSpy . calls . all ( ) [ 0 ] . args ) . toEqual ( [
97- 'XMLHttpRequest.addEventListener:load' ,
98- true ,
101+ 'Zone - XMLHttpRequest.addEventListener:load' ,
99102 ] ) ;
100103 expect ( scheduleAsyncTaskSpy . calls . all ( ) [ 1 ] . args ) . toEqual ( [
101- 'XMLHttpRequest.send' ,
102- false ,
104+ 'Zone - XMLHttpRequest.send' ,
103105 ] ) ;
104106 expect ( startAsyncTaskSpy . calls . count ( ) ) . toBe ( 2 ) ;
105107 expect ( finishAsyncTaskSpy . calls . count ( ) ) . toBe ( 2 ) ;
@@ -124,10 +126,9 @@ describe('AsyncTaggingConsoleTest', () => {
124126 button . dispatchEvent ( clickEvent ) ;
125127 button . removeEventListener ( 'click' , handler ) ;
126128 expect ( scheduleAsyncTaskSpy )
127- . toHaveBeenCalledWith ( 'HTMLButtonElement.addEventListener:click' , true ) ;
129+ . toHaveBeenCalledWith ( 'Zone - HTMLButtonElement.addEventListener:click' ) ;
128130 expect ( startAsyncTaskSpy . calls . count ( ) ) . toBe ( 2 ) ;
129131 expect ( finishAsyncTaskSpy . calls . count ( ) ) . toBe ( 2 ) ;
130- expect ( cancelAsyncTaskSpy . calls . count ( ) ) . toBe ( 1 ) ;
131132 } ) ;
132133 } ) ) ;
133134 } ) ;
0 commit comments