diff --git a/ng2-components/ng2-activiti-processlist/src/services/activiti-process.service.spec.ts b/ng2-components/ng2-activiti-processlist/src/services/activiti-process.service.spec.ts index 9f54e41d35..03c1b709ce 100644 --- a/ng2-components/ng2-activiti-processlist/src/services/activiti-process.service.spec.ts +++ b/ng2-components/ng2-activiti-processlist/src/services/activiti-process.service.spec.ts @@ -21,11 +21,13 @@ import { AlfrescoSettingsService, AlfrescoApiService } from 'ng2-alfresco-core'; +import { UserProcessInstanceFilterRepresentationModel } from '../models/filter.model'; import { ActivitiProcessService } from './activiti-process.service'; describe('ActivitiProcessService', () => { let service: ActivitiProcessService; + let authenticationService: AlfrescoAuthenticationService; let injector: ReflectiveInjector; let fakeEmptyFilters = { @@ -33,6 +35,15 @@ describe('ActivitiProcessService', () => { data: [ ] }; + let fakeApi = { + activiti: { + userFiltersApi: { + getUserProcessInstanceFilters: (filterOpts) => Promise.resolve({}), + createUserProcessInstanceFilter: (filter: UserProcessInstanceFilterRepresentationModel) => Promise.resolve(filter) + } + } + }; + beforeEach(() => { injector = ReflectiveInjector.resolveAndCreate([ ActivitiProcessService, @@ -41,32 +52,42 @@ describe('ActivitiProcessService', () => { AlfrescoSettingsService ]); service = injector.get(ActivitiProcessService); + authenticationService = injector.get(AlfrescoAuthenticationService); }); - it('should get process instances', (done) => { + xit('should get process instances', (done) => { expect(true).toBe(true); done(); }); - it('should call createDefaultFilters() when the returned filter list is empty', (done) => { - spyOn(service, 'createDefaultFilters'); - spyOn(service, 'callApiGetUserProcessInstanceFilters').and.returnValue(Promise.resolve(fakeEmptyFilters)); - spyOn(service, 'callApiAddFilter').and.returnValue(Promise.resolve({})); + it('should return the default filters when none are returned by the API', (done) => { + spyOn(fakeApi.activiti.userFiltersApi, 'getUserProcessInstanceFilters'). + and.returnValue(Promise.resolve(fakeEmptyFilters)); + spyOn(fakeApi.activiti.userFiltersApi, 'createUserProcessInstanceFilter'). + and.returnValue(Promise.resolve({})); + spyOn(authenticationService, 'getAlfrescoApi').and.returnValue(fakeApi); service.getProcessFilters(null).subscribe( (res) => { - expect(service.createDefaultFilters).toHaveBeenCalled(); + expect(fakeApi.activiti.userFiltersApi.createUserProcessInstanceFilter).toHaveBeenCalledTimes(3); done(); } ); }); - it('should return the default filters', () => { - spyOn(service, 'addFilter').and.returnValue(Promise.resolve({})); - let filters = service.createDefaultFilters(null); - expect(service.addFilter).toHaveBeenCalledTimes(3); - expect(filters).toBeDefined(); - expect(filters.length).toEqual(3); + it('should create the default filters when none are returned by the API', (done) => { + spyOn(fakeApi.activiti.userFiltersApi, 'getUserProcessInstanceFilters'). + and.returnValue(Promise.resolve(fakeEmptyFilters)); + spyOn(fakeApi.activiti.userFiltersApi, 'createUserProcessInstanceFilter'). + and.returnValue(Promise.resolve({})); + spyOn(authenticationService, 'getAlfrescoApi').and.returnValue(fakeApi); + + service.getProcessFilters(null).subscribe( + (res) => { + expect(res.length).toBe(3); + done(); + } + ); }); }); diff --git a/ng2-components/ng2-activiti-processlist/src/services/activiti-process.service.ts b/ng2-components/ng2-activiti-processlist/src/services/activiti-process.service.ts index b08fa1651f..dc6e48c00a 100644 --- a/ng2-components/ng2-activiti-processlist/src/services/activiti-process.service.ts +++ b/ng2-components/ng2-activiti-processlist/src/services/activiti-process.service.ts @@ -79,7 +79,7 @@ export class ActivitiProcessService { * @param appId * @returns {UserProcessInstanceFilterRepresentationModel[]} */ - createDefaultFilters(appId: string): UserProcessInstanceFilterRepresentationModel[] { + private createDefaultFilters(appId: string): UserProcessInstanceFilterRepresentationModel[] { let filters: UserProcessInstanceFilterRepresentationModel[] = []; let involvedTasksFilter = this.getRunningFilterInstance(appId);