@@ -147,7 +147,7 @@ describe('ProcessDetailComponent', () => {
147147 providers : [
148148 {
149149 provide : ActivatedRoute ,
150- useValue : { data : observableOf ( { process : createSuccessfulRemoteDataObject ( process ) } ) }
150+ useValue : { data : observableOf ( { process : createSuccessfulRemoteDataObject ( process ) } ) , snapshot : { params : { id : 1 } } } ,
151151 } ,
152152 { provide : ProcessDataService , useValue : processService } ,
153153 { provide : BitstreamDataService , useValue : bitstreamDataService } ,
@@ -310,10 +310,11 @@ describe('ProcessDetailComponent', () => {
310310 } ) ;
311311
312312 it ( 'should call refresh method every 5 seconds, until process is completed' , fakeAsync ( ( ) => {
313- spyOn ( component , 'refresh' ) ;
314- spyOn ( component , 'stopRefreshTimer' ) ;
313+ spyOn ( component , 'refresh' ) . and . callThrough ( ) ;
314+ spyOn ( component , 'stopRefreshTimer' ) . and . callThrough ( ) ;
315315
316- process . processStatus = ProcessStatus . COMPLETED ;
316+ // start off with a running process in order for the refresh counter starts counting up
317+ process . processStatus = ProcessStatus . RUNNING ;
317318 // set findbyId to return a completed process
318319 ( processService . findById as jasmine . Spy ) . and . returnValue ( observableOf ( createSuccessfulRemoteDataObject ( process ) ) ) ;
319320
@@ -336,6 +337,10 @@ describe('ProcessDetailComponent', () => {
336337 tick ( 1001 ) ; // 1 second + 1 ms by the setTimeout
337338 expect ( component . refreshCounter$ . value ) . toBe ( 0 ) ; // 1 - 1
338339
340+ // set the process to completed right before the counter checks the process
341+ process . processStatus = ProcessStatus . COMPLETED ;
342+ ( processService . findById as jasmine . Spy ) . and . returnValue ( observableOf ( createSuccessfulRemoteDataObject ( process ) ) ) ;
343+
339344 tick ( 1000 ) ; // 1 second
340345
341346 expect ( component . refresh ) . toHaveBeenCalledTimes ( 1 ) ;
0 commit comments