From 75f2165f3f78f197eaa2304a24fd777ca743986c Mon Sep 17 00:00:00 2001 From: Silviu Popa Date: Thu, 28 May 2020 02:07:04 +0300 Subject: [PATCH] [ACA-2975] fix start process wrong response (#5726) * [ACA-2975] fix process response object * add unit test Co-authored-by: Silviu Popa --- .../start-process-cloud.service.spec.ts | 30 ++++++++++++++++++- .../services/start-process-cloud.service.ts | 2 +- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/lib/process-services-cloud/src/lib/process/start-process/services/start-process-cloud.service.spec.ts b/lib/process-services-cloud/src/lib/process/start-process/services/start-process-cloud.service.spec.ts index 37661b896f..e3a8271087 100755 --- a/lib/process-services-cloud/src/lib/process/start-process/services/start-process-cloud.service.spec.ts +++ b/lib/process-services-cloud/src/lib/process/start-process/services/start-process-cloud.service.spec.ts @@ -17,7 +17,7 @@ import { TestBed } from '@angular/core/testing'; import { of, throwError } from 'rxjs'; -import { setupTestBed } from '@alfresco/adf-core'; +import { setupTestBed, AlfrescoApiService } from '@alfresco/adf-core'; import { StartProcessCloudService } from './start-process-cloud.service'; import { fakeProcessPayload } from '../mock/start-process.component.mock'; import { ProcessInstanceCloud } from '../models/process-instance-cloud.model'; @@ -27,6 +27,19 @@ import { ProcessDefinitionCloud } from '../models/process-definition-cloud.model describe('StartProcessCloudService', () => { let service: StartProcessCloudService; + let alfrescoApiService: AlfrescoApiService; + + const mock = { + oauth2Auth: { + callCustomApi: () => Promise.resolve({ + entry: { + id: 'fake-id', + name: 'fake-name', + status: 'RUNNING' + } + }) + } +}; setupTestBed({ imports: [HttpClientModule] @@ -34,6 +47,7 @@ describe('StartProcessCloudService', () => { beforeEach(() => { service = TestBed.get(StartProcessCloudService); + alfrescoApiService = TestBed.get(AlfrescoApiService); }); it('should be able to create a new process', (done) => { @@ -128,4 +142,18 @@ describe('StartProcessCloudService', () => { } ); }); + + it('should map the response when create a new process instance', (done) => { + spyOn(alfrescoApiService, 'getInstance').and.returnValue(mock); + service.startCreatedProcess('appName1', 'fake-id', fakeProcessPayload) + .subscribe( + (res: ProcessInstanceCloud) => { + expect(res).toBeDefined(); + expect(res.id).toEqual('fake-id'); + expect(res.name).toEqual('fake-name'); + expect(res.status).toEqual('RUNNING'); + done(); + } + ); + }); }); diff --git a/lib/process-services-cloud/src/lib/process/start-process/services/start-process-cloud.service.ts b/lib/process-services-cloud/src/lib/process/start-process/services/start-process-cloud.service.ts index a7a4da7906..5213a4f83c 100755 --- a/lib/process-services-cloud/src/lib/process/start-process/services/start-process-cloud.service.ts +++ b/lib/process-services-cloud/src/lib/process/start-process/services/start-process-cloud.service.ts @@ -81,7 +81,7 @@ export class StartProcessCloudService extends BaseCloudService { return this.post(url, payload).pipe( map((result: any) => result.entry), - map(processInstance => new ProcessInstanceCloud(processInstance.entry)) + map(processInstance => new ProcessInstanceCloud(processInstance)) ); }