change vpn tunnel to ipsec site connection Change-Id: Ia59bc87d4e61879b063719c114a02133b7044805
202 lines
6.6 KiB
JavaScript
202 lines
6.6 KiB
JavaScript
// Copyright 2021 99cloud
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
import { onlyOn } from '@cypress/skip-test';
|
|
import { vpnListUrl } from '../../../support/constants';
|
|
|
|
const vpnServiceEnabled = (Cypress.env('extensions') || []).includes(
|
|
'neutron::vpn'
|
|
);
|
|
|
|
onlyOn(!vpnServiceEnabled, () => {
|
|
describe('The VPN Page', () => {
|
|
it('successfully skip', () => {});
|
|
});
|
|
});
|
|
|
|
onlyOn(vpnServiceEnabled, () => {
|
|
describe('The VPN Page', () => {
|
|
const listUrl = vpnListUrl;
|
|
const uuid = Cypress._.random(0, 1e6);
|
|
const gateway = `e2e-gateway-${uuid}`;
|
|
const endpointLocal = `e2e-endpoint-local-${uuid}`;
|
|
const endpointPeer = `e2e-endpoint-peer-${uuid}`;
|
|
const ikePolicy = `e2e-ike-policy-${uuid}`;
|
|
const ipsecPolicy = `e2e-ipsec-policy-${uuid}`;
|
|
const ipsecSiteConnection = `e2e-ipsec-site-connection-${uuid}`;
|
|
|
|
const cidr = '192.168.0.0/24';
|
|
|
|
const networkName = `e2e-network-for-vpn-${uuid}`;
|
|
const routerName = `e2e-router-for-vpn-${uuid}`;
|
|
|
|
beforeEach(() => {
|
|
cy.login(listUrl);
|
|
});
|
|
|
|
it('successfully prepair resource', () => {
|
|
cy.createNetwork({ name: networkName });
|
|
cy.createRouter({ name: routerName, network: networkName });
|
|
});
|
|
|
|
it('successfully create gateway', () => {
|
|
cy.clickHeaderButton(1)
|
|
.formInput('name', gateway)
|
|
.formText('description', gateway)
|
|
.formTableSelectBySearch('router_id', routerName)
|
|
.clickModalActionSubmitButton();
|
|
});
|
|
|
|
it('successfully create local endpoint', () => {
|
|
cy.clickTab('VPN EndPoint Group', 'vpn_endpoint_groups')
|
|
.clickHeaderButton(1)
|
|
.wait(5000)
|
|
.formInput('name', endpointLocal)
|
|
.formText('description', endpointLocal)
|
|
.formSelect('type', 'Local')
|
|
.formTableSelectBySearch('router_id', routerName)
|
|
.wait(5000)
|
|
.formTableSelect('subnet_id')
|
|
.clickModalActionSubmitButton();
|
|
});
|
|
|
|
it('successfully create peer endpoint', () => {
|
|
cy.clickTab('VPN EndPoint Group', 'vpn_endpoint_groups')
|
|
.clickHeaderButton(1)
|
|
.formInput('name', endpointPeer)
|
|
.formText('description', endpointPeer)
|
|
.formSelect('type', 'Peer')
|
|
.wait(2000)
|
|
.formText('endpoints', cidr)
|
|
.clickModalActionSubmitButton();
|
|
});
|
|
|
|
it('successfully create ike policy', () => {
|
|
cy.clickTab('IKE Policy', 'ike_policy')
|
|
.clickHeaderButton(1)
|
|
.formInput('name', ikePolicy)
|
|
.formText('description', ikePolicy)
|
|
.clickModalActionSubmitButton();
|
|
});
|
|
|
|
it('successfully create ipsec policy', () => {
|
|
cy.clickTab('IPsec Policy', 'ipsec_policy')
|
|
.clickHeaderButton(1)
|
|
.formInput('name', ipsecPolicy)
|
|
.formText('description', ipsecPolicy)
|
|
.clickModalActionSubmitButton();
|
|
});
|
|
|
|
it('successfully create ipsec site connection', () => {
|
|
cy.clickTab('IPsec Site Connections', 'ipsec_site_connections')
|
|
.clickHeaderButton(1)
|
|
.wait(5000)
|
|
.formInput('name', ipsecSiteConnection)
|
|
.formText('description', ipsecSiteConnection)
|
|
.formSelect('vpnservice_id', gateway)
|
|
.formSelect('ikepolicy_id', ikePolicy)
|
|
.formSelect('ipsecpolicy_id', ipsecPolicy)
|
|
.formSelect('local_ep_group_id', endpointLocal)
|
|
.wait(2000)
|
|
.formInput('peer_address', '192.168.1.1')
|
|
.formSelect('peer_ep_group_id', endpointPeer)
|
|
.formInput('password', 'passW0rd')
|
|
.formInput('confirmPassword', 'passW0rd')
|
|
.formButtonClick('more')
|
|
.clickModalActionSubmitButton();
|
|
});
|
|
|
|
it('successfully detail ipsec site connection', () => {
|
|
cy.clickTab('IPsec Site Connections', 'ipsec_site_connections').tableSearchText(ipsecSiteConnection);
|
|
cy.goToDetail().wait(30000);
|
|
cy.goBackToList(listUrl);
|
|
});
|
|
|
|
it('successfully edit ipsec site connection', () => {
|
|
cy.clickTab('IPsec Site Connections')
|
|
.tableSearchText(ipsecSiteConnection)
|
|
.clickFirstActionButton()
|
|
.formText('description', 'description')
|
|
.clickModalActionSubmitButton();
|
|
});
|
|
|
|
it('successfully delete ipsec site connection', () => {
|
|
cy.clickTab('IPsec Site Connections')
|
|
.tableSearchText(ipsecSiteConnection)
|
|
.clickConfirmActionButton('Delete');
|
|
});
|
|
|
|
it('successfully edit ipsec policy', () => {
|
|
cy.clickTab('IPsec Policy')
|
|
.tableSearchText(ipsecPolicy)
|
|
.clickFirstActionButton()
|
|
.formText('description', 'description')
|
|
.clickModalActionSubmitButton();
|
|
});
|
|
|
|
it('successfully delete ipsec policy', () => {
|
|
cy.clickTab('IPsec Policy')
|
|
.tableSearchText(ipsecPolicy)
|
|
.clickConfirmActionButton('Delete');
|
|
});
|
|
|
|
it('successfully edit ike policy', () => {
|
|
cy.clickTab('IKE Policy')
|
|
.tableSearchText(ikePolicy)
|
|
.clickFirstActionButton()
|
|
.formText('description', 'description')
|
|
.clickModalActionSubmitButton();
|
|
});
|
|
|
|
it('successfully delete ike policy', () => {
|
|
cy.clickTab('IKE Policy')
|
|
.tableSearchText(ikePolicy)
|
|
.clickConfirmActionButton('Delete');
|
|
});
|
|
|
|
it('successfully edit endpoint', () => {
|
|
cy.clickTab('VPN EndPoint Group')
|
|
.tableSearchText(endpointLocal)
|
|
.clickFirstActionButton()
|
|
.formText('description', 'description')
|
|
.clickModalActionSubmitButton();
|
|
});
|
|
|
|
it('successfully delete endpoint', () => {
|
|
cy.clickTab('VPN EndPoint Group')
|
|
.tableSearchText(endpointLocal)
|
|
.clickConfirmActionButton('Delete')
|
|
.wait(5000)
|
|
.tableSearchText(endpointPeer)
|
|
.clickConfirmActionButton('Delete');
|
|
});
|
|
|
|
it('successfully edit gateway', () => {
|
|
cy.tableSearchText(gateway)
|
|
.clickFirstActionButton()
|
|
.formText('description', 'description')
|
|
.clickModalActionSubmitButton();
|
|
});
|
|
|
|
it('successfully delete gateway', () => {
|
|
cy.tableSearchText(gateway).clickConfirmActionButton('Delete');
|
|
});
|
|
|
|
it('successfully delete related resources', () => {
|
|
cy.deleteRouter(routerName, networkName);
|
|
cy.deleteAll('network', networkName);
|
|
});
|
|
});
|
|
});
|