aboutsummaryrefslogtreecommitdiffstats
path: root/vid-webpack-master/src/app/drawingBoard/service-planning/drawing-board-tree/drawing-board-tree.service.spec.ts
diff options
context:
space:
mode:
Diffstat (limited to 'vid-webpack-master/src/app/drawingBoard/service-planning/drawing-board-tree/drawing-board-tree.service.spec.ts')
-rw-r--r--vid-webpack-master/src/app/drawingBoard/service-planning/drawing-board-tree/drawing-board-tree.service.spec.ts147
1 files changed, 147 insertions, 0 deletions
diff --git a/vid-webpack-master/src/app/drawingBoard/service-planning/drawing-board-tree/drawing-board-tree.service.spec.ts b/vid-webpack-master/src/app/drawingBoard/service-planning/drawing-board-tree/drawing-board-tree.service.spec.ts
new file mode 100644
index 000000000..1b913cfe9
--- /dev/null
+++ b/vid-webpack-master/src/app/drawingBoard/service-planning/drawing-board-tree/drawing-board-tree.service.spec.ts
@@ -0,0 +1,147 @@
+import {TestBed, getTestBed} from '@angular/core/testing';
+import {
+ HttpClientTestingModule,
+ HttpTestingController
+} from '@angular/common/http/testing';
+import {NgRedux} from "@angular-redux/store";
+import {DrawingBoardTreeService, TreeNodeContextMenuModel} from "./drawing-board-tree.service";
+import {ITreeNode} from "angular-tree-component/dist/defs/api";
+
+ class MockAppStore<T>{
+ getState() {
+ return {
+ service : {
+ serviceInstance : {
+ "serviceInstanceId" : {
+ vnfs : {
+ "vnfStoreKey" : {
+ isMissingData : true,
+ vfModules : {
+ "vfModulesName" : {
+ "vfModulesName" : {
+ isMissingData : true
+ }
+ }
+ }
+ },
+
+ "vnfStoreKey1" : {
+ isMissingData : false,
+ vfModules : {
+ "vfModulesName" : {
+ "vfModulesName" : {
+ isMissingData : false
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+}
+
+describe('Drawing board tree Service', () => {
+ let injector;
+ let service: DrawingBoardTreeService;
+ let httpMock: HttpTestingController;
+
+
+ beforeAll(done => (async () => {
+ TestBed.configureTestingModule({
+ imports: [HttpClientTestingModule],
+ providers: [
+ DrawingBoardTreeService,
+ {provide: NgRedux, useClass: MockAppStore}]
+ });
+ await TestBed.compileComponents();
+
+ injector = getTestBed();
+ service = injector.get(DrawingBoardTreeService);
+ httpMock = injector.get(HttpTestingController);
+
+ })().then(done).catch(done.fail));
+
+
+
+
+ test('generateContextMenuOptions should return list of optional context menu', () => {
+ const options : TreeNodeContextMenuModel[] = service.generateContextMenuOptions();
+ const expected : TreeNodeContextMenuModel[] = [
+ new TreeNodeContextMenuModel('edit', 'context-menu-edit', 'Edit', 'edit-file-o'),
+ new TreeNodeContextMenuModel('duplicate', 'context-menu-duplicate', 'Duplicate', 'copy-o'),
+ new TreeNodeContextMenuModel('showAuditInfo', 'context-menu-showAuditInfo', 'Show audit info', 'eye-o'),
+ new TreeNodeContextMenuModel('addGroupMember', 'context-menu-addGroupMember', 'Add group members', 'plus'),
+ new TreeNodeContextMenuModel('delete', 'context-menu-delete', 'Delete', 'trash-o'),
+ new TreeNodeContextMenuModel('remove', 'context-menu-remove', 'Remove', 'trash-o'),
+ new TreeNodeContextMenuModel('undoDelete', 'context-menu-undoDelete', 'Undo Delete', 'undo-delete')
+ ];
+ expect(options.length).toEqual(7);
+ expect(options).toEqual(expected);
+ });
+
+ test('isVNFMissingData should return true if vnf isMissingData = true', () => {
+ let node : ITreeNode = <any>{
+ data : {
+ type : 'VF',
+ vnfStoreKey : "vnfStoreKey"
+ }
+ };
+ let result : boolean = service.isVNFMissingData(node, "serviceInstanceId");
+ expect(result).toBeTruthy();
+ });
+
+
+ test('isVNFMissingData should return false if vnf has isMissingData = false', () => {
+ let node : ITreeNode = <any>{
+ data : {
+ type : 'VFModule',
+ modelName : "vfModulesName",
+ dynamicModelName : "vfModulesName",
+ parent : {
+ vnfStoreKey : "vnfStoreKey1",
+ type : 'VF'
+ }
+ }
+ };
+ let result : boolean = service.isVNFMissingData(node, "serviceInstanceId");
+ expect(result).toBeFalsy();
+ });
+
+
+ test('isVFModuleMissingData should return true if vnfModule has isMissingData = true', () => {
+ let node : ITreeNode = <any>{
+ data : {
+ type : 'VFModule',
+ modelName : "vfModulesName",
+ dynamicModelName : "vfModulesName",
+ parent : {
+ vnfStoreKey : "vnfStoreKey",
+ type : 'VF'
+ }
+ }
+ };
+ let result : boolean = service.isVFModuleMissingData(node, "serviceInstanceId");
+ expect(result).toBeFalsy();
+ });
+
+
+ test('isVFModuleMissingData should return false if vnfModule has isMissingData = false', () => {
+ let node : ITreeNode = <any>{
+ data : {
+ type : 'VFModule',
+ modelName : "vfModulesName",
+ dynamicModelName : "vfModulesName",
+ parent : {
+ vnfStoreKey : "vnfStoreKey1",
+ type : 'VF'
+ }
+ }
+ };
+ let result : boolean = service.isVFModuleMissingData(node, "serviceInstanceId");
+ expect(result).toBeFalsy();
+ });
+
+});