1 ///<reference path="../../../node_modules/cypress/types/index.d.ts"/>
2 import {ServiceModel} from '../../support/jsonBuilders/models/service.model';
3 import {JsonBuilder} from '../../support/jsonBuilders/jsonBuilder';
5 describe('Permissions ', ()=> {
6 var jsonBuilderAndMock: JsonBuilder<ServiceModel> = new JsonBuilder<ServiceModel>();
9 cy.window().then((win) => {
10 win.sessionStorage.clear();
11 cy.preventErrorsOnLoading();
24 it('user without permission get mode-view : is not permitted', () => {
25 const SUBSCRIBER_ID: string = "e433710f-9217-458d-a79d-1c7aff376d89";
26 const SERVICE_TYPE: string = "TYLER SILVIA";
27 const SERVICE_INSTANCE_ID: string = "f8791436-8d55-4fde-b4d5-72dd2cf13cfb";
28 const SERVICE_MODEL_ID: string = '6b528779-44a3-4472-bdff-9cd15ec93450';
30 cy.initDrawingBoardUserPermission(<any>{isEditPermitted : false});
32 cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/serviceModels/ecompNamingFalseModel.json').then((res) => {
33 jsonBuilderAndMock.basicJson(
35 Cypress.config('baseUrl') + "/rest/models/services/6b528779-44a3-4472-bdff-9cd15ec93450",
38 "ecompNamingFalseModel",
42 cy.readFile('../vid-automation/src/test/resources/VnfGroup/serviceWithVnfGroping_serviceInstance.json').then((res) => {
43 jsonBuilderAndMock.basicJson(
45 Cypress.config('baseUrl') + `**/aai_get_service_instance_topology/**`,
47 "serviceWithVnfGroping_serviceInstance",
51 cy.openIframe(`app/ui/#/servicePlanning/EDIT?serviceModelId=${SERVICE_MODEL_ID}&subscriberId=${SUBSCRIBER_ID}&serviceType=${SERVICE_TYPE}&serviceInstanceId=${SERVICE_INSTANCE_ID}`);
53 cy.url().should('contains', 'VIEW')
56 it('user without permission get mode-view : is permitted', () => {
57 const SUBSCRIBER_ID: string = "e433710f-9217-458d-a79d-1c7aff376d89";
58 const SERVICE_TYPE: string = "TYLER SILVIA";
59 const SERVICE_INSTANCE_ID: string = "f8791436-8d55-4fde-b4d5-72dd2cf13cfb";
60 const SERVICE_MODEL_ID: string = '6b528779-44a3-4472-bdff-9cd15ec93450';
62 cy.initDrawingBoardUserPermission();
64 cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/serviceModels/ecompNamingFalseModel.json').then((res) => {
65 jsonBuilderAndMock.basicJson(
67 Cypress.config('baseUrl') + "/rest/models/services/6b528779-44a3-4472-bdff-9cd15ec93450",
70 "ecompNamingFalseModel",
74 cy.readFile('../vid-automation/src/test/resources/aaiGetInstanceTopology/getServiceInstanceTopologyResult.json').then((res) => {
75 jsonBuilderAndMock.basicJson(
77 Cypress.config('baseUrl') + "/aai_get_service_instance_topology/e433710f-9217-458d-a79d-1c7aff376d89/TYLER SILVIA/f8791436-8d55-4fde-b4d5-72dd2cf13cfb",
79 "initServiceInstanceTopology",
82 cy.openIframe(`app/ui/#/servicePlanning/EDIT?serviceModelId=${SERVICE_MODEL_ID}&subscriberId=${SUBSCRIBER_ID}&serviceType=${SERVICE_TYPE}&serviceInstanceId=${SERVICE_INSTANCE_ID}`);
84 cy.url().should('contains', 'EDIT');
85 cy.getElementByDataTestsId('deployBtn').contains('UPDATE');
86 cy.getElementByDataTestsId('isViewOnly-status-test').contains('IN EDITING');
89 it(`RETRY - drawing board mode - no permission should show retry view only mode`, () =>{
90 const SUBSCRIBER_ID: string = "e433710f-9217-458d-a79d-1c7aff376d89";
91 const SERVICE_TYPE: string = "TYLER SILVIA";
92 const SERVICE_INSTANCE_ID: string = "f8791436-8d55-4fde-b4d5-72dd2cf13cfb";
93 const SERVICE_MODEL_ID: string = '6b528779-44a3-4472-bdff-9cd15ec93450';
94 const JOB_ID: string = '123456-44a3-4472-bdff-9cd15ec12345';
95 cy.initDrawingBoardUserPermission(<any>{isEditPermitted : false});
96 cy.readFile('../vid-automation/src/test/resources/aaiGetInstanceTopology/getServiceInstanceTopologyResult.json').then((res) => {
98 // Adding VNF with isFailed.
99 res.vnfs["2017-388_PASQUALE-vPE 0"].isFailed = true;
100 res.vnfs["2017-488_PASQUALE-vPE 0"].isFailed = true;
102 // Adding VFModule with isFailed.
103 res.vnfs["2017-488_PASQUALE-vPE 0"].vfModules["2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0"]["2017488_pasqualevpe0..2017488PasqualeVpe..PASQUALE_base_vPE_BV..module-0uvfot"].isFailed = true;
105 jsonBuilderAndMock.basicJson(
107 Cypress.config('baseUrl') + "/asyncInstantiation/bulkForRetry/" + JOB_ID,
109 "initServiceInstanceRetryTopology",
111 cy.openIframe(`app/ui/#/servicePlanning/RETRY_EDIT?serviceModelId=${SERVICE_MODEL_ID}&subscriberId=${SUBSCRIBER_ID}&serviceType=${SERVICE_TYPE}&serviceInstanceId=${SERVICE_INSTANCE_ID}&jobId=${JOB_ID}`);
113 cy.url().should('contains', '/RETRY?')