diff options
Diffstat (limited to 'vid-webpack-master/src/app/shared/services/msoService')
-rw-r--r-- | vid-webpack-master/src/app/shared/services/msoService/mso.service.spec.ts | 37 | ||||
-rw-r--r-- | vid-webpack-master/src/app/shared/services/msoService/mso.service.ts | 38 |
2 files changed, 75 insertions, 0 deletions
diff --git a/vid-webpack-master/src/app/shared/services/msoService/mso.service.spec.ts b/vid-webpack-master/src/app/shared/services/msoService/mso.service.spec.ts new file mode 100644 index 000000000..9142e8d0f --- /dev/null +++ b/vid-webpack-master/src/app/shared/services/msoService/mso.service.spec.ts @@ -0,0 +1,37 @@ +import {getTestBed, TestBed} from '@angular/core/testing'; +import {HttpClientTestingModule, HttpTestingController} from '@angular/common/http/testing'; +import {MsoService} from './mso.service'; +import {Constants} from "../../utils/constants"; + + +describe('Mso Service', () => { + let injector; + let service: MsoService; + let httpMock: HttpTestingController; + + beforeAll(done => (async () => { + TestBed.configureTestingModule({ + imports: [HttpClientTestingModule], + providers: [MsoService] + }); + await TestBed.compileComponents(); + + + injector = getTestBed(); + service = injector.get(MsoService); + httpMock = injector.get(HttpTestingController); + + })().then(done).catch(done.fail)); + + describe('#instantiation status tests ', ()=> { + test('retry should send the right request', ()=>{ + const jobId: string = '111'; + + service.retryMsoTask(jobId).subscribe(); + const req = httpMock.expectOne(Constants.Path.SERVICES_JOB_INFO_PATH + '/retry/' + jobId); + + expect(req.request.method).toBe('POST'); + }); + }); + +}); diff --git a/vid-webpack-master/src/app/shared/services/msoService/mso.service.ts b/vid-webpack-master/src/app/shared/services/msoService/mso.service.ts new file mode 100644 index 000000000..7d31c6f7c --- /dev/null +++ b/vid-webpack-master/src/app/shared/services/msoService/mso.service.ts @@ -0,0 +1,38 @@ +import {Injectable} from "@angular/core"; +import {HttpClient} from "@angular/common/http"; +import {Observable} from "rxjs"; +import {Constants} from "../../utils/constants"; +import {ServiceInstance} from "../../models/serviceInstance"; + +@Injectable() +export class MsoService { + httpClient: HttpClient; + + constructor(http: HttpClient) { + this.httpClient = http; + } + + + public submitMsoTask(instanceFields): Observable<any> { + let path = Constants.Path.SERVICES_JOB_INFO_PATH + '/bulk'; + return this.httpClient.post(path, instanceFields); + } + + public retryMsoTask(jobId: string): Observable<any> { + let pathQuery = Constants.Path.SERVICES_JOB_INFO_PATH + '/retry/' + jobId; + return this.httpClient.post<any>(pathQuery, null); + } + + public retryBulkMsoTask(jobId: string, instanceFields: ServiceInstance): Observable<any> { + let pathQuery = Constants.Path.SERVICES_JOB_INFO_PATH + '/retryJobWithChangedData/'+ jobId; + return this.httpClient.post<any>(pathQuery, instanceFields); + } + + public createVnf(requestDetails, serviceInstanceId): Observable<any> { + let pathQuery: string = Constants.Path.MSO_CREATE_VNF_INSTANCE + serviceInstanceId; + + return this.httpClient.post( pathQuery, { + requestDetails : requestDetails + }); + } +} |