Skip to content

Commit

Permalink
Merge pull request DSpace#2408 from atmire/ProcessDetailComponent-tes…
Browse files Browse the repository at this point in the history
…t-improvemen

ProcessDetailComponent test improvement
  • Loading branch information
tdonohue authored Aug 8, 2023
2 parents aaff0f0 + 63e6e79 commit dc34cbe
Showing 1 changed file with 9 additions and 4 deletions.
13 changes: 9 additions & 4 deletions src/app/process-page/detail/process-detail.component.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ describe('ProcessDetailComponent', () => {
providers: [
{
provide: ActivatedRoute,
useValue: { data: observableOf({ process: createSuccessfulRemoteDataObject(process) }) }
useValue: { data: observableOf({ process: createSuccessfulRemoteDataObject(process) }), snapshot: { params: { id: 1 } } },
},
{ provide: ProcessDataService, useValue: processService },
{ provide: BitstreamDataService, useValue: bitstreamDataService },
Expand Down Expand Up @@ -310,10 +310,11 @@ describe('ProcessDetailComponent', () => {
});

it('should call refresh method every 5 seconds, until process is completed', fakeAsync(() => {
spyOn(component, 'refresh');
spyOn(component, 'stopRefreshTimer');
spyOn(component, 'refresh').and.callThrough();
spyOn(component, 'stopRefreshTimer').and.callThrough();

process.processStatus = ProcessStatus.COMPLETED;
// start off with a running process in order for the refresh counter starts counting up
process.processStatus = ProcessStatus.RUNNING;
// set findbyId to return a completed process
(processService.findById as jasmine.Spy).and.returnValue(observableOf(createSuccessfulRemoteDataObject(process)));

Expand All @@ -336,6 +337,10 @@ describe('ProcessDetailComponent', () => {
tick(1001); // 1 second + 1 ms by the setTimeout
expect(component.refreshCounter$.value).toBe(0); // 1 - 1

// set the process to completed right before the counter checks the process
process.processStatus = ProcessStatus.COMPLETED;
(processService.findById as jasmine.Spy).and.returnValue(observableOf(createSuccessfulRemoteDataObject(process)));

tick(1000); // 1 second

expect(component.refresh).toHaveBeenCalledTimes(1);
Expand Down

0 comments on commit dc34cbe

Please sign in to comment.