mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-26 17:24:56 +00:00
[ADF-1747] Task service - findAllTaskByState return a wrong list. (#2485)
* [ADF-1747] Task service - findAllTaskByState return a wrong list. * Refactored findAllTasksWhitoutState method. * [ADF-1747] Task service - findAllTaskByState return a wrong list. * Added unit test case. * [ADF-1747] Task service - findAllTaskByState return a wrong list. * Refactored unit test cases for tasklist.service
This commit is contained in:
parent
834a61eda4
commit
2aff5434f6
@ -222,3 +222,49 @@ export let fakeFormList = {
|
||||
tenantId: null
|
||||
}]
|
||||
};
|
||||
|
||||
export let fakeTaskOpen1 = {
|
||||
id: '1', name: 'FakeOpenTask1', description: null, category: null,
|
||||
assignee: fakeUser1,
|
||||
created: '2017-07-15T11:19:17.440+0000',
|
||||
dueDate: null,
|
||||
endDate: null
|
||||
};
|
||||
|
||||
export let fakeTaskOpen2 = {
|
||||
id: '1', name: 'FakeOpenTask2', description: null, category: null,
|
||||
assignee: { id: 1, email: 'fake-open-email@dom.com', firstName: 'firstName', lastName: 'lastName' },
|
||||
created: '2017-07-15T11:19:17.440+0000',
|
||||
dueDate: null,
|
||||
endDate: null
|
||||
};
|
||||
|
||||
export let fakeTaskCompleted1 = {
|
||||
id: '1', name: 'FakeCompletedTaskName1', description: null, category: null,
|
||||
assignee: { id: 1, email: 'fake-completed-email@dom.com', firstName: 'firstName', lastName: 'lastName' },
|
||||
created: '2016-07-15T11:19:17.440+0000',
|
||||
dueDate: null,
|
||||
endDate: '2016-11-03T15:25:42.749+0000'
|
||||
};
|
||||
|
||||
export let fakeTaskCompleted2 = {
|
||||
id: '1', name: 'FakeCompletedTaskName2', description: null, category: null,
|
||||
assignee: fakeUser1,
|
||||
created: null,
|
||||
dueDate: null,
|
||||
endDate: '2016-11-03T15:25:42.749+0000'
|
||||
};
|
||||
|
||||
export let fakeOpenTaskList = {
|
||||
size: 2,
|
||||
total: 2,
|
||||
start: 0,
|
||||
data: [fakeTaskOpen1, fakeTaskOpen2]
|
||||
};
|
||||
|
||||
export let fakeCompletedTaskList = {
|
||||
size: 2,
|
||||
total: 2,
|
||||
start: 0,
|
||||
data: [fakeTaskCompleted1, fakeTaskCompleted2]
|
||||
};
|
||||
|
@ -22,10 +22,12 @@ import { AppConfigServiceMock } from '../assets/app-config.service.mock';
|
||||
import {
|
||||
fakeAppFilter,
|
||||
fakeAppPromise,
|
||||
fakeCompletedTaskList,
|
||||
fakeErrorTaskList,
|
||||
fakeFilter,
|
||||
fakeFilters,
|
||||
fakeFormList,
|
||||
fakeOpenTaskList,
|
||||
fakeRepresentationFilter1,
|
||||
fakeRepresentationFilter2,
|
||||
fakeTaskDetails,
|
||||
@ -333,6 +335,50 @@ describe('Activiti TaskList Service', () => {
|
||||
);
|
||||
});
|
||||
|
||||
it('Should return both open and completed task', (done) => {
|
||||
spyOn(service, 'findTasksByState').and.returnValue(Observable.of(fakeOpenTaskList));
|
||||
spyOn(service, 'findAllTaskByState').and.returnValue(Observable.of(fakeCompletedTaskList));
|
||||
service.findAllTasksWhitoutState(<TaskQueryRequestRepresentationModel> fakeFilter).subscribe(
|
||||
res => {
|
||||
expect(res).toBeDefined();
|
||||
expect(res.data).toBeDefined();
|
||||
expect(res.data.length).toEqual(4);
|
||||
expect(res.data[0].name).toEqual('FakeOpenTask1');
|
||||
expect(res.data[1].assignee.email).toEqual('fake-open-email@dom.com');
|
||||
expect(res.data[2].name).toEqual('FakeCompletedTaskName1');
|
||||
expect(res.data[2].assignee.email).toEqual('fake-completed-email@dom.com');
|
||||
expect(res.data[3].name).toEqual('FakeCompletedTaskName2');
|
||||
done();
|
||||
}
|
||||
);
|
||||
});
|
||||
|
||||
it('should add the task list to the tasklistSubject with all tasks filtered without state', (done) => {
|
||||
spyOn(service, 'getTasks').and.returnValue(Observable.of(fakeTaskList));
|
||||
spyOn(service, 'getTotalTasks').and.returnValue(Observable.of(fakeTaskList));
|
||||
|
||||
service.tasksList$.subscribe(
|
||||
(res) => {
|
||||
expect(res).toBeDefined();
|
||||
expect(res.data).toBeDefined();
|
||||
expect(res.data.length).toEqual(2);
|
||||
expect(res.data[0].name).toEqual('FakeNameTask');
|
||||
expect(res.data[1].assignee.email).toEqual('fake-email@dom.com');
|
||||
});
|
||||
service.findAllTasksWhitoutState(<TaskQueryRequestRepresentationModel> fakeFilter).subscribe(
|
||||
res => {
|
||||
expect(res).toBeDefined();
|
||||
expect(res.data).toBeDefined();
|
||||
expect(res.data.length).toEqual(2);
|
||||
expect(res.data[0].name).toEqual('FakeNameTask');
|
||||
expect(res.data[0].assignee.email).toEqual('fake-email@dom.com');
|
||||
expect(res.data[1].name).toEqual('FakeNameTask');
|
||||
expect(res.data[1].assignee.email).toEqual('fake-email@dom.com');
|
||||
done();
|
||||
}
|
||||
);
|
||||
});
|
||||
|
||||
it('should return the task details ', (done) => {
|
||||
service.getTaskDetails('999').subscribe(
|
||||
(res: TaskDetailsModel) => {
|
||||
|
@ -163,15 +163,16 @@ export class TaskListService {
|
||||
*/
|
||||
findAllTasksWhitoutState(requestNode: TaskQueryRequestRepresentationModel): Observable<TaskListModel> {
|
||||
return Observable.forkJoin(
|
||||
this.findTasksByState(requestNode, 'open'),
|
||||
this.findAllTaskByState(requestNode, 'completed'),
|
||||
(activeTasks: TaskListModel, completedTasks: TaskListModel) => {
|
||||
const tasks = Object.assign({}, activeTasks);
|
||||
tasks.total += completedTasks.total;
|
||||
tasks.data = tasks.data.concat(completedTasks.data);
|
||||
return tasks;
|
||||
}
|
||||
);
|
||||
this.findTasksByState(requestNode, 'open'),
|
||||
this.findAllTaskByState(requestNode, 'completed'),
|
||||
(activeTasks: TaskListModel, completedTasks: TaskListModel) => {
|
||||
const tasks = Object.assign({}, activeTasks);
|
||||
tasks.total += completedTasks.total;
|
||||
tasks.data = tasks.data.concat(completedTasks.data);
|
||||
this.tasksListSubject.next(tasks);
|
||||
return tasks;
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user