blob: 65913d46b37334d504f06199aaae76d0a24fa32e [file] [log] [blame]
Ittay Sternf7926712019-07-07 19:23:03 +03001///<reference path="../../../node_modules/cypress/types/index.d.ts"/>
2import {JsonBuilder} from '../../support/jsonBuilders/jsonBuilder';
3import {ServiceModel} from '../../support/jsonBuilders/models/service.model';
4import {AaiServiceInstancesModel} from '../../support/jsonBuilders/models/serviceInstances.model';
5import {AAISubDetailsModel} from '../../support/jsonBuilders/models/aaiSubDetails.model';
6import {AAISubViewEditModel} from '../../support/jsonBuilders/models/aaiSubViewEdit.model';
7
8describe('Resume tests', function () {
9 describe('Resume Defect 710619 - VID doesn\'t prompt to allow the user to attach the volume group on clicking Resume', () => {
10
11 let jsonBuilderAAIService: JsonBuilder<ServiceModel> = new JsonBuilder<ServiceModel>();
12 let jsonBuilderAAISubViewEditModel: JsonBuilder<AAISubViewEditModel> = new JsonBuilder<AAISubViewEditModel>();
13 let jsonBuilderAAISubDetailsModel: JsonBuilder<AAISubDetailsModel> = new JsonBuilder<AAISubDetailsModel>();
14 let jsonBuilderAaiServiceInstances: JsonBuilder<AaiServiceInstancesModel> = new JsonBuilder<AaiServiceInstancesModel>();
15 beforeEach(() => {
16 cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/defect710619/serviceE2E.json').then((res) => {
17 jsonBuilderAAIService.basicJson(
18 res,
19 Cypress.config('baseUrl') + "/rest/models/services/**",
20 200, 0,
21 "service-complexService")
22 });
23
24
25 cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/defect710619/aaiSubViewEditForServiceWithSomeVFModuleE2E.json').then((res) => {
26 jsonBuilderAAISubViewEditModel.basicJson(
27 res,
28 Cypress.config('baseUrl') + "/aai_sub_viewedit/**",
29 200,
30 0,
31 "aai-sub-view-edit")
32 });
33
34 cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/defect710619/aaiSubDetailsE2E.json').then((res) => {
35 jsonBuilderAAISubDetailsModel.basicJson(
36 res,
37 Cypress.config('baseUrl') + "/aai_sub_details/**",
38 200,
39 0,
40 "aai-sub-details")
41 });
42
43 cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/defect710619/aaiServiceInstancesE2E.json').then((res) => {
44 jsonBuilderAaiServiceInstances.basicJson(
45 res,
46 Cypress.config('baseUrl') + "/search_service_instances**",
47 200,
48 0,
49 "aai-get-service-instances")
50 });
51
52 cy.server().route({
53 url: Cypress.config('baseUrl') + '/mso/mso_create_vfmodule_instance/dedd680f-f3bd-46d8-97c7-b6fc28db9317/vnfs/1d45e992-e282-4ba5-b17a-9ca6562169e3',
54 method: 'POST',
55 status: 200,
56 response: "[]",
57 }).as("actualResumeCall");
58
59 cy.initVidMock();
60
61 cy.initTenants();
62
63 cy.login();
64 });
65
66 afterEach(() => {
67 cy.screenshot();
68 });
69
70 it(`Resume Defect 710619 - with flag FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE is ON`, function () {
71 cy.visit('/serviceModels.htm#/instantiate?subscriberId=e433710f-9217-458d-a79d-1c7aff376d89&subscriberName=SILVIA ROBBINS&serviceType=TYLER%20SILVIA&serviceInstanceId=dedd680f-f3bd-46d8-97c7-b6fc28db9317&aaiModelVersionId=4b60252a-bf6c-40df-9db5-98b4c363fdf4&isPermitted=true').then(()=>{
72 cy.wait('@service-complexService');
73 checkResumeAndPopup("dpa2bccfx5992v_base_module","vfModuleTreeNode-assigned");
74 });
75 });
76
77 it(`Resume Defect 710619 - with flag FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE is OFF`, function () {
78
79 cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/flags.json').then((res) => {
80 cy.server()
81 .route({
82 method: 'GET',
83 delay : 0,
84 status : 200,
85 url : Cypress.config('baseUrl') + "/flags**",
86 response : {
87 "FLAG_ADD_MSO_TESTAPI_FIELD": true,
88 "FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE": false
89 }
90 }).as('initFlags');
91 });
92
93 cy.visit('/serviceModels.htm#/instantiate?subscriberId=e433710f-9217-458d-a79d-1c7aff376d89&subscriberName=SILVIA ROBBINS&serviceType=TYLER%20SILVIA&serviceInstanceId=dedd680f-f3bd-46d8-97c7-b6fc28db9317&aaiModelVersionId=4b60252a-bf6c-40df-9db5-98b4c363fdf4&isPermitted=true');
94 cy.wait('@service-complexService');
95
96 checkResumeAndPopup("dpa2bccfx5992v_base_module","vfModuleTreeNode-assigned");
97
98 });
99
100
101 function checkResumeAndPopup(vfModuleName:string, vfModuleClassName:string) {
102 cy.get('div').find('.' + vfModuleClassName)
103 .getElementByDataTestsId('resumeVFModuleButton-' + vfModuleName).click().then(()=> {
104 cy.getElementByDataTestsId('confirmResumeDeleteButton').should('be.visible')
105 .getElementByDataTestsId('softDeleteButton').should('not.be.visible')
106 .getElementByDataTestsId('lcpRegion').should('be.visible').select("hvf6")
107 .getElementByDataTestsId('tenant').should('be.visible').select("bae71557c5bb4d5aac6743a4e5f1d054");
108 cy.getElementByDataTestsId('confirmResumeDeleteButton').not('.button--inactive').click().then(()=> {
109 cy.wait('@actualResumeCall').then(xhr => {
110 cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/defect710619/expectedResumeWithVGResults.json').then((expectedResult) => {
111 cy.deepCompare(xhr.request.body, expectedResult);
112 });
113 });
114 });
115 });
116 }
117 });
118});
119