Merge from ecomp 718fd196 - Modern UI

Issue-ID: VID-378

Change-Id: I2736b98426e324ec3aa233b034229ba84d99839f
Signed-off-by: Ittay Stern <ittay.stern@att.com>
diff --git a/vid-webpack-master/cypress/integration/iFrames/resume.e2e.ts b/vid-webpack-master/cypress/integration/iFrames/resume.e2e.ts
new file mode 100644
index 0000000..65913d4
--- /dev/null
+++ b/vid-webpack-master/cypress/integration/iFrames/resume.e2e.ts
@@ -0,0 +1,119 @@
+///<reference path="../../../node_modules/cypress/types/index.d.ts"/>
+import {JsonBuilder} from '../../support/jsonBuilders/jsonBuilder';
+import {ServiceModel} from '../../support/jsonBuilders/models/service.model';
+import {AaiServiceInstancesModel} from '../../support/jsonBuilders/models/serviceInstances.model';
+import {AAISubDetailsModel} from '../../support/jsonBuilders/models/aaiSubDetails.model';
+import {AAISubViewEditModel} from '../../support/jsonBuilders/models/aaiSubViewEdit.model';
+
+describe('Resume tests', function () {
+  describe('Resume Defect 710619 - VID doesn\'t prompt to allow the user to attach the volume group on clicking Resume', () => {
+
+    let jsonBuilderAAIService: JsonBuilder<ServiceModel> = new JsonBuilder<ServiceModel>();
+    let jsonBuilderAAISubViewEditModel: JsonBuilder<AAISubViewEditModel> = new JsonBuilder<AAISubViewEditModel>();
+    let jsonBuilderAAISubDetailsModel: JsonBuilder<AAISubDetailsModel> = new JsonBuilder<AAISubDetailsModel>();
+    let jsonBuilderAaiServiceInstances: JsonBuilder<AaiServiceInstancesModel> = new JsonBuilder<AaiServiceInstancesModel>();
+    beforeEach(() => {
+      cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/defect710619/serviceE2E.json').then((res) => {
+        jsonBuilderAAIService.basicJson(
+          res,
+          Cypress.config('baseUrl') + "/rest/models/services/**",
+          200, 0,
+          "service-complexService")
+      });
+
+
+      cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/defect710619/aaiSubViewEditForServiceWithSomeVFModuleE2E.json').then((res) => {
+        jsonBuilderAAISubViewEditModel.basicJson(
+          res,
+          Cypress.config('baseUrl') + "/aai_sub_viewedit/**",
+          200,
+          0,
+          "aai-sub-view-edit")
+      });
+
+      cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/defect710619/aaiSubDetailsE2E.json').then((res) => {
+        jsonBuilderAAISubDetailsModel.basicJson(
+          res,
+          Cypress.config('baseUrl') + "/aai_sub_details/**",
+          200,
+          0,
+          "aai-sub-details")
+      });
+
+      cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/defect710619/aaiServiceInstancesE2E.json').then((res) => {
+        jsonBuilderAaiServiceInstances.basicJson(
+          res,
+          Cypress.config('baseUrl') + "/search_service_instances**",
+          200,
+          0,
+          "aai-get-service-instances")
+      });
+
+      cy.server().route({
+        url: Cypress.config('baseUrl') + '/mso/mso_create_vfmodule_instance/dedd680f-f3bd-46d8-97c7-b6fc28db9317/vnfs/1d45e992-e282-4ba5-b17a-9ca6562169e3',
+        method: 'POST',
+        status: 200,
+        response: "[]",
+      }).as("actualResumeCall");
+
+      cy.initVidMock();
+
+      cy.initTenants();
+
+      cy.login();
+    });
+
+    afterEach(() => {
+      cy.screenshot();
+    });
+
+    it(`Resume Defect 710619 - with flag FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE is ON`, function () {
+      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(()=>{
+        cy.wait('@service-complexService');
+        checkResumeAndPopup("dpa2bccfx5992v_base_module","vfModuleTreeNode-assigned");
+      });
+     });
+
+    it(`Resume Defect 710619 - with flag FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE is OFF`, function () {
+
+      cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/flags.json').then((res) => {
+        cy.server()
+          .route({
+            method: 'GET',
+            delay :  0,
+            status :  200,
+            url : Cypress.config('baseUrl') + "/flags**",
+            response : {
+              "FLAG_ADD_MSO_TESTAPI_FIELD": true,
+              "FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE": false
+            }
+          }).as('initFlags');
+      });
+
+      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');
+      cy.wait('@service-complexService');
+
+      checkResumeAndPopup("dpa2bccfx5992v_base_module","vfModuleTreeNode-assigned");
+
+    });
+
+
+    function checkResumeAndPopup(vfModuleName:string, vfModuleClassName:string)  {
+      cy.get('div').find('.' + vfModuleClassName)
+        .getElementByDataTestsId('resumeVFModuleButton-' + vfModuleName).click().then(()=> {
+        cy.getElementByDataTestsId('confirmResumeDeleteButton').should('be.visible')
+          .getElementByDataTestsId('softDeleteButton').should('not.be.visible')
+          .getElementByDataTestsId('lcpRegion').should('be.visible').select("hvf6")
+          .getElementByDataTestsId('tenant').should('be.visible').select("bae71557c5bb4d5aac6743a4e5f1d054");
+        cy.getElementByDataTestsId('confirmResumeDeleteButton').not('.button--inactive').click().then(()=> {
+            cy.wait('@actualResumeCall').then(xhr => {
+              cy.readFile('/cypress/support/jsonBuilders/mocks/jsons/defect710619/expectedResumeWithVGResults.json').then((expectedResult) => {
+                cy.deepCompare(xhr.request.body, expectedResult);
+              });
+            });
+        });
+      });
+    }
+  });
+});
+