summaryrefslogtreecommitdiffstats
path: root/public/cypress/support
diff options
context:
space:
mode:
Diffstat (limited to 'public/cypress/support')
-rw-r--r--public/cypress/support/commands.ts31
-rw-r--r--public/cypress/support/generalCommands.ts50
-rw-r--r--public/cypress/support/homeCommands.ts147
-rw-r--r--public/cypress/support/index.js23
-rw-r--r--public/cypress/support/ruleEngineCommands.ts71
5 files changed, 322 insertions, 0 deletions
diff --git a/public/cypress/support/commands.ts b/public/cypress/support/commands.ts
new file mode 100644
index 0000000..ee8623c
--- /dev/null
+++ b/public/cypress/support/commands.ts
@@ -0,0 +1,31 @@
+declare namespace Cypress {
+ interface Chainable {
+ getTemplateApiError: typeof getTemplateApiError;
+ }
+}
+
+function getTemplateApiError(): void {
+ cy.server().route({
+ method: 'GET',
+ url:
+ Cypress.env('backendUrl') +
+ '/service/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a',
+ status: 500,
+ response: {
+ requestError: {
+ policyException: {
+ messageId: 'POL5000',
+ text: 'Error: Internal Server Error. Please try again later.',
+ variables: [],
+ formattedErrorMessage:
+ 'Error: Internal Server Error. Please try again later.'
+ }
+ },
+ notes: 'Error: Requested "123" resource was not found.'
+ }
+ });
+ cy.homePage();
+ cy.get('button[data-tests-id="btn-create-mc"]').click();
+}
+
+Cypress.Commands.add('getTemplateApiError', getTemplateApiError);
diff --git a/public/cypress/support/generalCommands.ts b/public/cypress/support/generalCommands.ts
new file mode 100644
index 0000000..fc87acc
--- /dev/null
+++ b/public/cypress/support/generalCommands.ts
@@ -0,0 +1,50 @@
+declare namespace Cypress {
+ interface Chainable {
+ httpGetDDLData: typeof httpGetDDLData;
+ fillNewMcForm: typeof fillNewMcForm;
+ httpCreateNewMc: typeof httpCreateNewMc;
+ }
+}
+
+function httpGetDDLData(): void {
+ cy
+ .server()
+ .route({
+ method: 'GET',
+ url:
+ Cypress.env('backendUrl') +
+ '/service/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a',
+ response: 'fixture:serviceDdl'
+ })
+ .as('vfniListApi')
+ .route({
+ method: 'GET',
+ url:
+ Cypress.env('backendUrl') + '/getResourcesByMonitoringTemplateCategory',
+ response: [{ name: 'AviStone1234' }]
+ })
+ .as('templateAPi');
+}
+
+function fillNewMcForm() {
+ cy.get('input[data-tests-id="nameMc"]').type('new mc');
+ cy.get('textarea[data-tests-id="descMc"]').type('Hello Description');
+ cy.get('select[data-tests-id="templateDdl"]').select('AviStone1234');
+ cy.get('select[data-tests-id="vfniDdl"]').select('LiavSrv');
+}
+
+function httpCreateNewMc() {
+ cy.server();
+ cy
+ .route({
+ method: 'POST',
+ url: Cypress.env('backendUrl') + '/createMC',
+ response: 'fixture:createMcRes'
+ })
+ .as('newMC');
+}
+
+// Add cypress commands
+Cypress.Commands.add('httpGetDDLData', httpGetDDLData);
+Cypress.Commands.add('fillNewMcForm', fillNewMcForm);
+Cypress.Commands.add('httpCreateNewMc', httpCreateNewMc);
diff --git a/public/cypress/support/homeCommands.ts b/public/cypress/support/homeCommands.ts
new file mode 100644
index 0000000..6f3349c
--- /dev/null
+++ b/public/cypress/support/homeCommands.ts
@@ -0,0 +1,147 @@
+declare namespace Cypress {
+ interface Chainable {
+ homePage: typeof homePage;
+ homePageCertified: typeof homePageCertified;
+ sdcIsOwnerFalse: typeof sdcIsOwnerFalse;
+ sdcUserNotCheckout: typeof sdcUserNotCheckout;
+ getMCList: typeof getMCList;
+ getMCListEmpty: typeof getMCListEmpty;
+ deleteMonitoringComponent: typeof deleteMonitoringComponent;
+ deleteMonitoringComponentWithBlueprint: typeof deleteMonitoringComponentWithBlueprint;
+ submitMonitoringComponent: typeof submitMonitoringComponent;
+ saveMonitoringComponent: typeof saveMonitoringComponent;
+ getMC: typeof getMC;
+ }
+}
+
+// functionality
+function sdcIsOwnerFalse(): void {
+ cy.visit(
+ 'home?userId=cs0008&userRole=DESIGNER&displayType=context&contextType=SERVICE&uuid=b1645734-b812-4cd7-a0cc-5b5843940ad6&lifecycleState=NOT_CERTIFIED_CHECKOUT&isOwner=false'
+ );
+}
+
+function sdcUserNotCheckout(): void {
+ cy.visit(
+ 'home?userId=cs0008&userRole=DESIGNER&displayType=context&contextType=SERVICE&uuid=b1645734-b812-4cd7-a0cc-5b5843940ad6&lifecycleState=READY_FOR_CERTIFICATION&isOwner=true'
+ );
+}
+
+function homePage(): void {
+ cy.visit(
+ 'home?userId=cs0008&userRole=DESIGNER&displayType=context&contextType=SERVICES&uuid=06c7d927-4e2f-47e1-a29d-b6ed229ebc0a&lifecycleState=NOT_CERTIFIED_CHECKOUT&isOwner=true&version=0.1'
+ );
+}
+
+function homePageCertified(): void {
+ cy.visit(
+ 'home?userId=cs0008&userRole=DESIGNER&displayType=context&contextType=SERVICES&uuid=06c7d927-4e2f-47e1-a29d-b6ed229ebc0a&lifecycleState=CERTIFIED_CHECKOUT&isOwner=true&version=0.1'
+ );
+}
+
+function deleteMonitoringComponent(): void {
+ cy
+ .server()
+ .route({
+ method: 'DELETE',
+ url:
+ Cypress.env('backendUrl') +
+ '/SERVICES/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/vfb53dd48360ff4fa2b66e6ceb1961bd9b0/cba37ed8-94e1-406f-b4f5-b5edbc31ac85/deleteVfcmtReference',
+ response: '{}'
+ })
+ .as('deleteMonitoringComponent');
+}
+
+function saveMonitoringComponent(): void {
+ cy
+ .server()
+ .route({
+ method: 'POST',
+ url:
+ Cypress.env('backendUrl') +
+ '/SERVICES/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/vfb53dd48360ff4fa2b66e6ceb1961bd9b0/saveComposition/cba37ed8-94e1-406f-b4f5-b5edbc31ac85',
+ response: '{}'
+ })
+ .as('saveMonitoringComponent');
+}
+
+function submitMonitoringComponent(): void {
+ cy
+ .server()
+ .route({
+ method: 'POST',
+ url:
+ Cypress.env('backendUrl') +
+ '/SERVICES/createBluePrint/cba37ed8-94e1-406f-b4f5-b5edbc31ac85/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/vfb53dd48360ff4fa2b66e6ceb1961bd9b0/',
+ response: '{}'
+ })
+ .as('submitMonitoringComponent');
+}
+
+function deleteMonitoringComponentWithBlueprint(): void {
+ cy
+ .server()
+ .route({
+ method: 'DELETE',
+ url:
+ Cypress.env('backendUrl') +
+ '/SERVICES/teSt.__.monitoring---TempLATE.6hnc/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/dump0/64471437-8feb-40d9-a8b0-9407a81dd5c0/deleteVfcmtReference',
+ response: '{}'
+ })
+ .as('deleteMonitoringComponentWithBlueprint');
+}
+
+function getMCList(): void {
+ cy
+ .server()
+ .route({
+ method: 'GET',
+ url:
+ Cypress.env('backendUrl') +
+ '/SERVICES/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/0.1/monitoringComponents',
+ response: 'fixture:monitoringComponentsMock'
+ })
+ .as('mcList');
+}
+
+function getMC(): void {
+ cy
+ .server()
+ .route({
+ method: 'GET',
+ url:
+ Cypress.env('backendUrl') +
+ '/getMC/cba37ed8-94e1-406f-b4f5-b5edbc31ac85',
+ response: 'fixture:getMCMock'
+ })
+ .as('getMC');
+}
+
+function getMCListEmpty(): void {
+ cy
+ .server()
+ .route({
+ method: 'GET',
+ url:
+ Cypress.env('backendUrl') +
+ '/SERVICES/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/0.1/monitoringComponents',
+ response: '{}'
+ })
+ .as('mcListEmpty');
+}
+
+// Add cypress commands
+Cypress.Commands.add('homePage', homePage);
+Cypress.Commands.add('homePageCertified', homePageCertified);
+Cypress.Commands.add('sdcIsOwnerFalse', sdcIsOwnerFalse);
+Cypress.Commands.add('sdcUserNotCheckout', sdcUserNotCheckout);
+Cypress.Commands.add('getMCList', getMCList);
+Cypress.Commands.add('getMCListEmpty', getMCListEmpty);
+Cypress.Commands.add('deleteMonitoringComponent', deleteMonitoringComponent);
+Cypress.Commands.add(
+ 'deleteMonitoringComponentWithBlueprint',
+ deleteMonitoringComponentWithBlueprint
+);
+Cypress.Commands.add('submitMonitoringComponent', submitMonitoringComponent);
+Cypress.Commands.add('saveMonitoringComponent', saveMonitoringComponent);
+Cypress.Commands.add('getMC', getMC);
diff --git a/public/cypress/support/index.js b/public/cypress/support/index.js
new file mode 100644
index 0000000..2f70722
--- /dev/null
+++ b/public/cypress/support/index.js
@@ -0,0 +1,23 @@
+// ***********************************************************
+// This example support/index.js is processed and
+// loaded automatically before your test files.
+//
+// This is a great place to put global configuration and
+// behavior that modifies Cypress.
+//
+// You can change the location of this file or turn off
+// automatically serving support files with the
+// 'supportFile' configuration option.
+//
+// You can read more here:
+// https://on.cypress.io/configuration
+// ***********************************************************
+
+// Import commands.js using ES2015 syntax:
+import './commands';
+import './homeCommands';
+import './generalCommands';
+import './ruleEngineCommands';
+
+// Alternatively you can use CommonJS syntax:
+// require('./commands')
diff --git a/public/cypress/support/ruleEngineCommands.ts b/public/cypress/support/ruleEngineCommands.ts
new file mode 100644
index 0000000..2142e7f
--- /dev/null
+++ b/public/cypress/support/ruleEngineCommands.ts
@@ -0,0 +1,71 @@
+declare namespace Cypress {
+ interface Chainable {
+ emptyRuleEngine: typeof emptyRuleEngine;
+ httpTargetTree: typeof httpTargetTree;
+ doneSaveRule: typeof doneSaveRule;
+ httpTransalte: typeof httpTransalte;
+ }
+}
+
+function emptyRuleEngine(targetFiled) {
+ cy.server();
+ cy
+ .route({
+ method: 'GET',
+ url: `${Cypress.env(
+ 'backendUrl'
+ )}/rule-editor/rule/6d436c07-8006-4335-8c84-d65b4740f8d6/map/n.1517823219961.0/${targetFiled}`,
+ response: {}
+ })
+ .as('serverRuleList')
+ .route({
+ method: 'GET',
+ url: Cypress.env('backendUrl') + '/rule-editor/list-events-by-versions',
+ response: 'fixture:list-events-by-version'
+ })
+ .as('serverEventsAndVersion');
+}
+
+function httpTargetTree() {
+ cy.server();
+ cy
+ .route({
+ method: 'GET',
+ url:
+ Cypress.env('backendUrl') + '/rule-editor/definition/4.1/syslogFields',
+ response: 'fixture:syslogTargetTree'
+ })
+ .as('targetData');
+}
+
+function doneSaveRule() {
+ cy.server();
+ cy
+ .route({
+ method: 'POST',
+ url:
+ Cypress.env('backendUrl') +
+ '/rule-editor/rule/6d436c07-8006-4335-8c84-d65b4740f8d6/map/n.1517823219961.0/Type1',
+ response: 'fixture:doneSaveSimpleCopy'
+ })
+ .as('doneSaveCopyRule');
+}
+
+function httpTransalte() {
+ cy.server();
+ cy
+ .route({
+ method: 'GET',
+ url:
+ Cypress.env('backendUrl') +
+ '/rule-editor/rule/translate/6d436c07-8006-4335-8c84-d65b4740f8d6/map/n.1517823219961.0/Type1',
+ response: 'fixture:TranslateSimpleCopy'
+ })
+ .as('TranslateSimpleCopy');
+}
+
+// Add cypress commands
+Cypress.Commands.add('emptyRuleEngine', emptyRuleEngine);
+Cypress.Commands.add('httpTargetTree', httpTargetTree);
+Cypress.Commands.add('doneSaveRule', doneSaveRule);
+Cypress.Commands.add('httpTransalte', httpTransalte);