Skip to content

Commit 76bbe45

Browse files
[DSC-2436] fix tests
1 parent 81a1986 commit 76bbe45

1 file changed

Lines changed: 27 additions & 17 deletions

File tree

src/app/process-page/overview/table/process-overview-table.component.spec.ts

Lines changed: 27 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import {
1111
TranslateModule,
1212
TranslateService,
1313
} from '@ngx-translate/core';
14-
import { BehaviorSubject } from 'rxjs';
14+
import {BehaviorSubject, Observable, of} from 'rxjs';
1515
import { take } from 'rxjs/operators';
1616

1717
import { AuthService } from '../../../core/auth/auth.service';
@@ -34,8 +34,11 @@ import { ProcessStatus } from '../../processes/process-status.model';
3434
import { ProcessBulkDeleteService } from '../process-bulk-delete.service';
3535
import { ProcessOverviewService } from '../process-overview.service';
3636
import { ProcessOverviewTableComponent } from './process-overview-table.component';
37+
import {FindListOptions} from "../../../core/data/find-list-options.model";
38+
import {RemoteData} from "../../../core/data/remote-data";
39+
import {PaginatedList} from "../../../core/data/paginated-list.model";
3740

38-
fdescribe('ProcessOverviewTableComponent', () => {
41+
describe('ProcessOverviewTableComponent', () => {
3942
let component: ProcessOverviewTableComponent;
4043
let fixture: ComponentFixture<ProcessOverviewTableComponent>;
4144

@@ -47,13 +50,16 @@ fdescribe('ProcessOverviewTableComponent', () => {
4750
let modalService: NgbModal;
4851
let authService; // : AuthService; Not typed as the mock does not fully implement AuthService
4952
let routeService: RouteService;
50-
let authorizationService: AuthorizationDataService;
5153

5254
let processes: Process[];
5355
let ePerson: EPerson;
5456

5557
let translateServiceSpy: jasmine.SpyObj<TranslateService>;
5658

59+
const authorizationService = jasmine.createSpyObj('authorizationService', {
60+
isAuthorized: of(true),
61+
});
62+
5763
function init() {
5864
processes = [
5965
Object.assign(new Process(), {
@@ -106,6 +112,7 @@ fdescribe('ProcessOverviewTableComponent', () => {
106112
sort: 'creationTime',
107113
},
108114
getProcessesByProcessStatus: createSuccessfulRemoteDataObject$(createPaginatedList(processes)).pipe(take(1)),
115+
getOwnProcessesByProcessStatus: createSuccessfulRemoteDataObject$(createPaginatedList(processes)).pipe(take(1)),
109116
});
110117
processService = jasmine.createSpyObj('processService', {
111118
searchBy: createSuccessfulRemoteDataObject$(createPaginatedList(processes)).pipe(take(1)),
@@ -137,21 +144,12 @@ fdescribe('ProcessOverviewTableComponent', () => {
137144

138145
authService = new AuthServiceMock();
139146
routeService = routeServiceStub;
140-
141-
authorizationService = jasmine.createSpyObj('authorizationService', {
142-
isAuthorized: new BehaviorSubject(true),
143-
});
144147
}
145148

146149
beforeEach(waitForAsync(() => {
147150
init();
148151

149-
translateServiceSpy = jasmine.createSpyObj('TranslateService', ['get'], {
150-
onTranslationChange: new BehaviorSubject({}),
151-
onLangChange: new BehaviorSubject({}),
152-
onDefaultLangChange: new BehaviorSubject({}),
153-
});
154-
translateServiceSpy.get.and.returnValue(new BehaviorSubject('process.overview.unknown.user'));
152+
translateServiceSpy = jasmine.createSpyObj('TranslateService', ['get']);
155153

156154
void TestBed.configureTestingModule({
157155
imports: [TranslateModule.forRoot(), RouterTestingModule.withRoutes([]), VarDirective, ProcessOverviewTableComponent],
@@ -165,7 +163,6 @@ fdescribe('ProcessOverviewTableComponent', () => {
165163
{ provide: AuthService, useValue: authService },
166164
{ provide: RouteService, useValue: routeService },
167165
{ provide: AuthorizationDataService, useValue: authorizationService },
168-
{ provide: TranslateService, useValue: translateServiceSpy },
169166
],
170167
schemas: [NO_ERRORS_SCHEMA],
171168
}).overrideComponent(ProcessOverviewTableComponent, {
@@ -240,14 +237,13 @@ fdescribe('ProcessOverviewTableComponent', () => {
240237
});
241238

242239
describe('getEPersonName function', () => {
243-
beforeEach(() => {
244-
translateServiceSpy.get.calls.reset();
245-
});
246240

247241
it('should return unknown user when id is null', (done: DoneFn) => {
248242
const id = null;
249243
const expectedTranslation = 'process.overview.unknown.user';
250244

245+
translateServiceSpy.get(expectedTranslation);
246+
251247
component.getEPersonName(id).subscribe((result: string) => {
252248
expect(result).toBe(expectedTranslation);
253249
done();
@@ -259,6 +255,8 @@ fdescribe('ProcessOverviewTableComponent', () => {
259255
const id = '';
260256
const expectedTranslation = 'process.overview.unknown.user';
261257

258+
translateServiceSpy.get(expectedTranslation);
259+
262260
component.getEPersonName(id).subscribe((result: string) => {
263261
expect(result).toBe(expectedTranslation);
264262
done();
@@ -277,4 +275,16 @@ fdescribe('ProcessOverviewTableComponent', () => {
277275
expect(translateServiceSpy.get).not.toHaveBeenCalled();
278276
});
279277
});
278+
279+
describe('when user is not admin', () => {
280+
beforeAll(waitForAsync(() => {
281+
authorizationService.isAuthorized.and.callFake(() => of(false));
282+
}));
283+
284+
it ('should call getOwnProcessesByProcessStatus', () => {
285+
expect(processOverviewService.getOwnProcessesByProcessStatus).toHaveBeenCalled();
286+
});
287+
288+
});
289+
280290
});

0 commit comments

Comments
 (0)