merge from ecomp a88f0072 - Modern UI
[vid.git] / vid-webpack-master / src / app / shared / resolvers / viewEdit / viewEdit.resolver.spec.ts
1 import {getTestBed, TestBed} from '@angular/core/testing';
2 import {HttpClientTestingModule, HttpTestingController} from '@angular/common/http/testing';
3 import {NgRedux} from "@angular-redux/store";
4 import {ViewEditResolver} from "./viewEdit.resolver";
5 import {AaiService} from "../../services/aaiService/aai.service";
6 import {FeatureFlagsService} from "../../services/featureFlag/feature-flags.service";
7 import {ActivatedRouteSnapshot, convertToParamMap} from "@angular/router";
8 import {AppState} from "../../store/reducers";
9 import {UpdateDrawingBoardStatusAction} from "../../storeUtil/utils/global/global.actions";
10
11 class MockAppStore<T> {
12   getState() {
13     return {
14       global:{
15         drawingBoardStatus: "VIEW"
16       },
17       service: {
18         serviceInstance: {}
19       }
20     }
21   }
22   dispatch(){
23
24   }
25 }
26
27
28 describe('View Edit resolver', () => {
29   let injector;
30   let aaiService: AaiService;
31   let resolver: ViewEditResolver;
32   let httpMock: HttpTestingController;
33   let store : NgRedux<AppState>;
34
35   let activatedRouteSnapshot: ActivatedRouteSnapshot;
36   let updateDrawingBoardStatusAction: UpdateDrawingBoardStatusAction;
37
38   beforeAll(done => (async () => {
39     TestBed.configureTestingModule({
40       imports: [HttpClientTestingModule],
41       providers: [
42         ViewEditResolver,
43         AaiService,
44         FeatureFlagsService,
45         {provide: NgRedux, useClass: MockAppStore},
46         {
47           provide: ActivatedRouteSnapshot, useValue: {
48             queryParamMap:
49               convertToParamMap({
50                 serviceModelId: 'serviceModelId',
51                 subscriberId: 'subscriberId',
52                 serviceType: 'serviceType',
53                 serviceInstanceId : 'serviceInstanceId'
54               })
55           },
56
57         }
58       ]
59     });
60     await TestBed.compileComponents();
61
62     injector = getTestBed();
63     aaiService = injector.get(AaiService);
64     resolver = injector.get(ViewEditResolver);
65     httpMock = injector.get(HttpTestingController);
66     activatedRouteSnapshot = injector.get(ActivatedRouteSnapshot);
67     store = injector.get(NgRedux)
68
69   })().then(done).catch(done.fail));
70
71
72   test('should call both api', () => {
73     // spyOn(aaiService, 'getServiceModelById');
74     // spyOn(aaiService, 'retrieveAndStoreServiceInstanceTopology');
75     // spyOn(store, 'dispatch');
76     // resolver.resolve(activatedRouteSnapshot);
77     //
78     // expect(aaiService.getServiceModelById).toHaveBeenCalledWith('serviceModelId');
79     // expect(aaiService.retrieveAndStoreServiceInstanceTopology).toHaveBeenCalledWith('serviceInstanceId', 'subscriberId', 'serviceType', 'serviceModelId');
80   });
81
82 });