1 ///<reference path="../../../node_modules/cypress/types/index.d.ts"/> / <reference types="Cypress" />
4 import {JsonBuilder} from "../../support/jsonBuilders/jsonBuilder";
5 import {ServiceModel} from "../../support/jsonBuilders/models/service.model";
6 import {AaiServiceInstancesModel} from "../../support/jsonBuilders/models/serviceInstances.model";
7 import {AAISubViewEditModel} from "../../support/jsonBuilders/models/aaiSubViewEdit.model";
9 const jsonBuilderAndMock: JsonBuilder<ServiceModel> = new JsonBuilder<ServiceModel>();
10 let jsonBuilderAAIService: JsonBuilder<ServiceModel> = new JsonBuilder<ServiceModel>();
11 let jsonBuilderAaiServiceInstances: JsonBuilder<AaiServiceInstancesModel> = new JsonBuilder<AaiServiceInstancesModel>();
12 let jsonBuilderAAISubViewEditModel: JsonBuilder<AAISubViewEditModel> = new JsonBuilder<AAISubViewEditModel>();
15 describe('View Edit page: Add network', () =>{
17 cy.clearSessionStorage();
18 cy.initGetAAISubDetails();
21 cy.setTestApiParamToGR();
31 it(`Add new network to service with one existing network `, () =>{
32 const serviceType = 'Emanuel';
33 const subscriberId = 'a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb';
34 const serviceModelId = 'f93e72e1-77fc-4f54-b207-298d766d0886';
35 const serviceInstanceId = 'ce2821fc-3b28-4759-9613-1e514d7563c0';
36 const serviceInvariantUuid = "8c364754-4c76-4abc-b8f3-88da5f67d588";
38 cy.initDrawingBoardUserPermission();
39 cy.route(`**/rest/models/services/${serviceModelId}`,
40 'fixture:../support/jsonBuilders/mocks/jsons/add_Network/add_network_model.json')
41 .as('serviceModelAddNetwork');
43 cy.route(`**/aai_get_service_instance_topology/${subscriberId}/${serviceType}/${serviceInstanceId}`,
44 'fixture:../support/jsonBuilders/mocks/jsons/add_Network/add_network_instance.json')
45 .as('serviceInstanceAddNetwork');
47 cy.openIframe(`app/ui/#/servicePlanning/EDIT?serviceModelId=${serviceModelId}&subscriberId=${subscriberId}&serviceType=${serviceType}&serviceInstanceId=${serviceInstanceId}`);
49 cy.getElementByDataTestsId('node-OVS Provider-add-btn').click({force: true}).then(() => {
51 cy.fillNetworkPopup();
54 mockAsyncBulkResponse();
56 cy.getElementByDataTestsId('deployBtn').should('have.text', 'UPDATE').click();
58 cy.getReduxState().then((state) => {
60 const networks = state.service.serviceInstance['f93e72e1-77fc-4f54-b207-298d766d0886'].networks;
61 cy.wait('@expectedPostAsyncInstantiation').then(xhr => {
62 cy.readFile('../vid-app-common/src/test/resources/payload_jsons/Network/one_network_exists_add_another_network_expected_bulk.json').then((expectedResult) => {
64 //set randomized trackById into bulk expected file
65 expectedResult.networks['OVS Provider'].trackById = networks['OVS Provider'].trackById;
67 cy.deepCompare(xhr.request.body, expectedResult);
74 function mockAsyncBulkResponse() {
76 url: Cypress.config('baseUrl') + '/asyncInstantiation/bulk',
80 }).as("expectedPostAsyncInstantiation");