From d9114da35a4084fdbea8d7c9707255fb349dcc93 Mon Sep 17 00:00:00 2001 From: tplevko Date: Wed, 18 Sep 2024 16:05:01 +0200 Subject: [PATCH] chore(e2e) - add addStringProperty function --- .../ui-tests/cypress/e2e/beansConfig.cy.ts | 12 +------ .../rootContainersConf.cy.ts | 25 ++------------- .../multiValueSerialization.cy.ts | 31 ++----------------- .../sidepanelConfig/routeBeanConf.cy.ts | 12 +------ packages/ui-tests/cypress/e2e/metadata.cy.ts | 18 ++--------- .../ui-tests/cypress/support/cypress.d.ts | 1 + .../next-commands/nodeConfiguration.ts | 18 +++++++++++ 7 files changed, 27 insertions(+), 90 deletions(-) diff --git a/packages/ui-tests/cypress/e2e/beansConfig.cy.ts b/packages/ui-tests/cypress/e2e/beansConfig.cy.ts index fdfd2c95e..91340c245 100644 --- a/packages/ui-tests/cypress/e2e/beansConfig.cy.ts +++ b/packages/ui-tests/cypress/e2e/beansConfig.cy.ts @@ -17,17 +17,7 @@ describe('Test for Bean support', () => { cy.openBeans(); cy.forceSelectMetadataRow(0); - cy.expandWrappedSection('properties'); - cy.get('[data-testid="properties-add-string-property--btn"]').not(':hidden').first().click({ force: true }); - cy.get('[data-testid="properties--placeholder-name-input"]').should('not.be.disabled'); - cy.get('[data-testid="properties--placeholder-name-input"]').click({ force: true }); - cy.get('[data-testid="properties--placeholder-name-input"]').clear().type('test'); - - cy.get('[data-testid="properties--placeholder-value-input"]').should('not.be.disabled'); - cy.get('[data-testid="properties--placeholder-value-input"]').click({ force: true }); - cy.get('[data-testid="properties--placeholder-value-input"]').clear().type('value'); - - cy.get('[data-testid="properties--placeholder-property-edit-confirm--btn"]').click({ force: true }); + cy.addStringProperty('properties', 'test', 'value'); cy.openSourceCode(); // CHECK the bean was created in the code editor diff --git a/packages/ui-tests/cypress/e2e/designer/rootContainerConfig/rootContainersConf.cy.ts b/packages/ui-tests/cypress/e2e/designer/rootContainerConfig/rootContainersConf.cy.ts index 8607206d9..94ae5456b 100644 --- a/packages/ui-tests/cypress/e2e/designer/rootContainerConfig/rootContainersConf.cy.ts +++ b/packages/ui-tests/cypress/e2e/designer/rootContainerConfig/rootContainersConf.cy.ts @@ -136,29 +136,8 @@ describe('Test for camel route root containers configuration', () => { cy.get(`input[name="name"]`).clear(); cy.get(`input[name="name"]`).type('testName'); - cy.expandWrappedSection('labels'); - cy.get('[data-testid="properties-add-string-property--btn"]').not(':hidden').first().click({ force: true }); - cy.get('[data-testid="labels--placeholder-name-input"]').should('not.be.disabled'); - cy.get('[data-testid="labels--placeholder-name-input"]').click({ force: true }); - cy.get('[data-testid="labels--placeholder-name-input"]').clear().type('labelsTest'); - - cy.get('[data-testid="labels--placeholder-value-input"]').should('not.be.disabled'); - cy.get('[data-testid="labels--placeholder-value-input"]').click({ force: true }); - cy.get('[data-testid="labels--placeholder-value-input"]').clear().type('labelsValue'); - cy.get('[data-testid="labels--placeholder-property-edit-confirm--btn"]').click({ force: true }); - cy.closeWrappedSection('labels'); - - cy.expandWrappedSection('annotations'); - cy.get('[data-testid="properties-add-string-property--btn"]').not(':hidden').first().click({ force: true }); - cy.get('[data-testid="annotations--placeholder-name-input"]').should('not.be.disabled'); - cy.get('[data-testid="annotations--placeholder-name-input"]').click({ force: true }); - cy.get('[data-testid="annotations--placeholder-name-input"]').clear().type('annotationsTest'); - - cy.get('[data-testid="annotations--placeholder-value-input"]').should('not.be.disabled'); - cy.get('[data-testid="annotations--placeholder-value-input"]').click({ force: true }); - cy.get('[data-testid="annotations--placeholder-value-input"]').clear().type('annotationsValue'); - cy.get('[data-testid="annotations--placeholder-property-edit-confirm--btn"]').click({ force: true }); - cy.closeWrappedSection('annotations'); + cy.addStringProperty('labels', 'labelsTest', 'labelsValue'); + cy.addStringProperty('annotations', 'annotationsTest', 'annotationsValue'); cy.openSourceCode(); diff --git a/packages/ui-tests/cypress/e2e/designer/sidepanelConfig/multiValueSerialization.cy.ts b/packages/ui-tests/cypress/e2e/designer/sidepanelConfig/multiValueSerialization.cy.ts index 3696398af..3af3041e0 100644 --- a/packages/ui-tests/cypress/e2e/designer/sidepanelConfig/multiValueSerialization.cy.ts +++ b/packages/ui-tests/cypress/e2e/designer/sidepanelConfig/multiValueSerialization.cy.ts @@ -10,36 +10,9 @@ describe('Tests for Multi Value serialization', () => { cy.selectFormTab('All'); cy.filterFields('Job Parameters'); - cy.expandWrappedSection('parameters.jobParameters'); - cy.get('[data-testid="properties-add-string-property--btn"]').not(':hidden').first().click({ force: true }); - cy.get('[data-testid="parameters.jobParameters--placeholder-name-input"]').should('not.be.disabled'); - cy.get('[data-testid="parameters.jobParameters--placeholder-name-input"]').click({ force: true }); - cy.get('[data-testid="parameters.jobParameters--placeholder-name-input"]').clear().type('jobParametersTest'); - - cy.get('[data-testid="parameters.jobParameters--placeholder-value-input"]').should('not.be.disabled'); - cy.get('[data-testid="parameters.jobParameters--placeholder-value-input"]').click({ force: true }); - cy.get('[data-testid="parameters.jobParameters--placeholder-value-input"]').clear().type('jobParametersValue'); - cy.get('[data-testid="parameters.jobParameters--placeholder-property-edit-confirm--btn"]').click({ force: true }); - cy.closeWrappedSection('parameters.jobParameters'); - + cy.addStringProperty('parameters.jobParameters', 'jobParametersTest', 'jobParametersValue'); cy.filterFields('Trigger Parameters'); - cy.expandWrappedSection('parameters.triggerParameters'); - cy.get('[data-testid="properties-add-string-property--btn"]').not(':hidden').first().click({ force: true }); - cy.get('[data-testid="parameters.triggerParameters--placeholder-name-input"]').should('not.be.disabled'); - cy.get('[data-testid="parameters.triggerParameters--placeholder-name-input"]').click({ force: true }); - cy.get('[data-testid="parameters.triggerParameters--placeholder-name-input"]') - .clear() - .type('triggerParametersTest'); - - cy.get('[data-testid="parameters.triggerParameters--placeholder-value-input"]').should('not.be.disabled'); - cy.get('[data-testid="parameters.triggerParameters--placeholder-value-input"]').click({ force: true }); - cy.get('[data-testid="parameters.triggerParameters--placeholder-value-input"]') - .clear() - .type('triggerParametersValue'); - cy.get('[data-testid="parameters.triggerParameters--placeholder-property-edit-confirm--btn"]').click({ - force: true, - }); - cy.closeWrappedSection('parameters.triggerParameters'); + cy.addStringProperty('parameters.triggerParameters', 'triggerParametersTest', 'triggerParametersValue'); // CHECK changes are reflected in the code editor cy.openSourceCode(); diff --git a/packages/ui-tests/cypress/e2e/designer/sidepanelConfig/routeBeanConf.cy.ts b/packages/ui-tests/cypress/e2e/designer/sidepanelConfig/routeBeanConf.cy.ts index 3e8d91072..d0b5eeafe 100644 --- a/packages/ui-tests/cypress/e2e/designer/sidepanelConfig/routeBeanConf.cy.ts +++ b/packages/ui-tests/cypress/e2e/designer/sidepanelConfig/routeBeanConf.cy.ts @@ -18,17 +18,7 @@ describe('Test for node bean reference and configuration support', () => { cy.get(`input[name="name"]`).clear().type('test'); cy.get(`input[name="type"]`).clear().type('org.acme'); - cy.expandWrappedSection('properties'); - cy.get('[data-testid="properties-add-string-property--btn"]').not(':hidden').first().click({ force: true }); - cy.get('[data-testid="properties--placeholder-name-input"]').should('not.be.disabled'); - cy.get('[data-testid="properties--placeholder-name-input"]').click({ force: true }); - cy.get('[data-testid="properties--placeholder-name-input"]').clear().type('test'); - - cy.get('[data-testid="properties--placeholder-value-input"]').should('not.be.disabled'); - cy.get('[data-testid="properties--placeholder-value-input"]').click({ force: true }); - cy.get('[data-testid="properties--placeholder-value-input"]').clear().type('value'); - - cy.get('[data-testid="properties--placeholder-property-edit-confirm--btn"]').click({ force: true }); + cy.addStringProperty('properties', 'test', 'value'); cy.get('[data-testid="create-bean-btn"').click(); cy.closeStepConfigurationTab(); diff --git a/packages/ui-tests/cypress/e2e/metadata.cy.ts b/packages/ui-tests/cypress/e2e/metadata.cy.ts index 2475a4a77..30d8360b0 100644 --- a/packages/ui-tests/cypress/e2e/metadata.cy.ts +++ b/packages/ui-tests/cypress/e2e/metadata.cy.ts @@ -7,22 +7,8 @@ describe('Test for Metadata Editor support', () => { cy.uploadFixture('flows/kameletBinding/kafkaSourceSink.yaml'); cy.openMetadata(); - cy.expandWrappedSection('annotations'); - cy.get('[data-testid="properties-add-string-property--btn"]').not(':hidden').first().click({ force: true }); - cy.get('[data-testid="annotations--placeholder-name-input"]').click({ force: true }); - cy.get('[data-testid="annotations--placeholder-name-input"]').clear().type('test-annotations'); - cy.get('[data-testid="annotations--placeholder-value-input"]').click({ force: true }); - cy.get('[data-testid="annotations--placeholder-value-input"]').clear().type('value-annotations'); - cy.get('[data-testid="annotations--placeholder-property-edit-confirm--btn"]').click({ force: true }); - cy.closeWrappedSection('annotations'); - cy.expandWrappedSection('labels'); - cy.get('[data-testid="properties-add-string-property--btn"]').not(':hidden').first().click({ force: true }); - cy.get('[data-testid="labels--placeholder-name-input"]').click({ force: true }); - cy.get('[data-testid="labels--placeholder-name-input"]').clear().type('test-labels'); - cy.get('[data-testid="labels--placeholder-value-input"]').click({ force: true }); - cy.get('[data-testid="labels--placeholder-value-input"]').clear().type('value-labels'); - cy.get('[data-testid="labels--placeholder-property-edit-confirm--btn"]').click({ force: true }); - cy.closeWrappedSection('labels'); + cy.addStringProperty('annotations', 'test-annotations', 'value-annotations'); + cy.addStringProperty('labels', 'test-labels', 'value-labels'); cy.get(`input[name="creationTimestamp"]`).clear().type('testCreationTimestamp'); cy.get(`input[name="deletionGracePeriodSeconds"]`).clear().type('1000'); diff --git a/packages/ui-tests/cypress/support/cypress.d.ts b/packages/ui-tests/cypress/support/cypress.d.ts index 0da73d816..424e716f4 100644 --- a/packages/ui-tests/cypress/support/cypress.d.ts +++ b/packages/ui-tests/cypress/support/cypress.d.ts @@ -83,6 +83,7 @@ declare global { filterFields(filter: string): Chainable>; selectFormTab(tab: string): Chainable>; specifiedFormTab(tab: string): Chainable>; + addStringProperty(selector: string, key: string, value: string): Chainable>; // metadata expandWrappedSection(sectionName: string): Chainable>; closeWrappedSection(sectionName: string): Chainable>; diff --git a/packages/ui-tests/cypress/support/next-commands/nodeConfiguration.ts b/packages/ui-tests/cypress/support/next-commands/nodeConfiguration.ts index e5dd2e060..23fd870a7 100644 --- a/packages/ui-tests/cypress/support/next-commands/nodeConfiguration.ts +++ b/packages/ui-tests/cypress/support/next-commands/nodeConfiguration.ts @@ -152,3 +152,21 @@ Cypress.Commands.add('specifiedFormTab', (value: string) => { cy.get(`[id$="${value}"]`).should('have.attr', 'aria-pressed', 'true'); }); }); + +Cypress.Commands.add('addStringProperty', (selector: string, key: string, value: string) => { + cy.expandWrappedSection(selector); + cy.get('[data-testid="properties-add-string-property--btn"]').not(':hidden').first().click({ force: true }); + cy.get('[data-testid="' + selector + '--placeholder-name-input"]').should('not.be.disabled'); + cy.get('[data-testid="' + selector + '--placeholder-name-input"]').click({ force: true }); + cy.get('[data-testid="' + selector + '--placeholder-name-input"]') + .clear() + .type(key); + + cy.get('[data-testid="' + selector + '--placeholder-value-input"]').should('not.be.disabled'); + cy.get('[data-testid="' + selector + '--placeholder-value-input"]').click({ force: true }); + cy.get('[data-testid="' + selector + '--placeholder-value-input"]') + .clear() + .type(value); + cy.get('[data-testid="' + selector + '--placeholder-property-edit-confirm--btn"]').click({ force: true }); + cy.closeWrappedSection(selector); +});