Skip to content

Commit

Permalink
Upgrade formik-pf to bring fix for submit issue
Browse files Browse the repository at this point in the history
  • Loading branch information
rohitkrai03 committed Dec 13, 2022
1 parent 2a65883 commit 4862ca4
Show file tree
Hide file tree
Showing 9 changed files with 134 additions and 118 deletions.
6 changes: 3 additions & 3 deletions integration-tests/support/pages/AddComponentPage.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,11 @@ export class AddComponentPage extends AbstractWizardPage {
}

clickNext() {
cy.get(addComponentPagePO.next).trigger('click');
cy.get(addComponentPagePO.next).click({ force: true });
}

loginByToken(username: string, token: string){
cy.contains('button', addComponentPagePO.useTokenButton, {timeout : 120000}).click();
loginByToken(username: string, token: string) {
cy.contains('button', addComponentPagePO.useTokenButton, { timeout: 120000 }).click();
cy.get(addComponentPagePO.username).type(username);
cy.get(addComponentPagePO.token).type(token, { log: false });
cy.wait(2000);
Expand Down
3 changes: 2 additions & 1 deletion integration-tests/support/pages/ComponentsPage.ts
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,8 @@ export class ComponentPage extends AbstractWizardPage {
}

createApplication() {
cy.get(ComponentsPagePO.create).trigger('click');
cy.get(ComponentsPagePO.create).click({ force: true });
cy.get(ComponentsPagePO.create).click({ force: true });
cy.get(ComponentsPagePO.create).should('be.disabled');
Common.waitForLoad();
}
Expand Down
9 changes: 5 additions & 4 deletions integration-tests/support/pages/CreateApplicationPage.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,12 @@ export class CreateApplicationPage extends AbstractWizardPage {
cy.get(createApplicationPagePO.applicationName).clear();
}

clickCreateApplication() {
cy.get('body').then(body => {
clickCreateApplication() {
cy.get('body').then((body) => {
if (body.find("h4:contains('No applications')").length > 0) {
cy.get('.pf-c-empty-state__content')
.contains(createApplicationPagePO.createApplication).click({ force: true });
.contains(createApplicationPagePO.createApplication)
.click({ force: true });
} else {
cy.contains(createApplicationPagePO.createApplication).click({ force: true });
}
Expand All @@ -31,6 +32,6 @@ export class CreateApplicationPage extends AbstractWizardPage {
}

clickNext() {
cy.get(createApplicationPagePO.next).trigger('click');
cy.get(createApplicationPagePO.next).click({ force: true });
}
}
36 changes: 18 additions & 18 deletions integration-tests/support/pages/hacbs/AddIntegrationTestPage.ts
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
import { addIntegrationTestStepPO } from '../../pageObjects/hacbs-po';

export class AddIntegrationTestPage {
enterDisplayName(displayName: string) {
cy.get(addIntegrationTestStepPO.displayNameInput).clear().type(displayName);
}
enterContainerImage(containerImage: string) {
cy.get(addIntegrationTestStepPO.containerImageInput).clear().type(containerImage);
}
enterPipelineName(pipelineName: string) {
cy.get(addIntegrationTestStepPO.pipelineNameInput).clear().type(pipelineName);
}
markOptionalForRelease() {
cy.get(addIntegrationTestStepPO.optionalreleaseCheckbox).click();
}
clickNext() {
cy.get(addIntegrationTestStepPO.next).trigger('click');
}
clickAdd() {
cy.get(addIntegrationTestStepPO.add).click();
}
enterDisplayName(displayName: string) {
cy.get(addIntegrationTestStepPO.displayNameInput).clear().type(displayName);
}
enterContainerImage(containerImage: string) {
cy.get(addIntegrationTestStepPO.containerImageInput).clear().type(containerImage);
}
enterPipelineName(pipelineName: string) {
cy.get(addIntegrationTestStepPO.pipelineNameInput).clear().type(pipelineName);
}
markOptionalForRelease() {
cy.get(addIntegrationTestStepPO.optionalreleaseCheckbox).click();
}
clickNext() {
cy.get(addIntegrationTestStepPO.next).click({ force: true });
}
clickAdd() {
cy.get(addIntegrationTestStepPO.add).click();
}
}
6 changes: 3 additions & 3 deletions integration-tests/support/pages/hacbs/CreateBuildPage.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { createBuildStepPO } from '../../pageObjects/hacbs-po';

export class CreateBuildPage {
clickNext() {
cy.get(createBuildStepPO.next).trigger('click');
}
clickNext() {
cy.get(createBuildStepPO.next).click({ force: true });
}
}
1 change: 1 addition & 0 deletions integration-tests/utils/Applications.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ export class Applications {
cy.testA11y(`${pageTitles.createApp} page`);
createApplicationPage.setApplicationName(name);
createApplicationPage.clickNext();
createApplicationPage.clickNext();
cy.testA11y(`Select source form`);
}
}
175 changes: 94 additions & 81 deletions integration-tests/utils/HACBSApplications.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
import { applicationDetailPagePO } from '../support/pageObjects/createApplication-po';
import { overviewTabPO, componentsTabPO, integrationTestsTabPO, actionsDropdown, addIntegrationTestStepPO } from '../support/pageObjects/hacbs-po';
import {
overviewTabPO,
componentsTabPO,
integrationTestsTabPO,
actionsDropdown,
addIntegrationTestStepPO,
} from '../support/pageObjects/hacbs-po';
import { AddComponentPage } from '../support/pages/AddComponentPage';
import { ComponentPage } from '../support/pages/ComponentsPage';
import { AddIntegrationTestPage } from '../support/pages/hacbs/AddIntegrationTestPage';
Expand All @@ -10,102 +16,109 @@ import { Common } from './Common';
import { OverviewTabPage } from '../support/pages/hacbs/tabs/OverviewTabPage';

export class HACBSApplications {
static deleteApplication(applicationName: string) {
Applications.deleteApplication(applicationName);
}

static createApplication(name: string) {
Applications.createApplication(name);
}

static createComponent(publicGitRepo: string, componentName: string, integrationTestName: string, optionalForRelease: boolean = false) {
addComponentStep(publicGitRepo);
reviewComponentsStep(componentName);
createBuildStep();
addIntegrationTestStep(integrationTestName, optionalForRelease);
}

static createdComponentExists(componentName: string, applicationName: string) {
this.goToComponentsTab();

Common.verifyPageTitle(applicationName);
Common.waitForLoad();
this.getComponentListItem(componentName).should('exist');
}

static getComponentListItem(application: string) {
return cy.contains(applicationDetailPagePO.item, application, { timeout: 60000 });
}

static clickActionsDropdown(dropdownItem: string) {
cy.get(actionsDropdown.dropdown).click();
cy.contains(dropdownItem).click();
}

static goToOverviewTab() {
cy.get(overviewTabPO.clickTab).click();
return new OverviewTabPage();
}

static goToComponentsTab() {
cy.get(componentsTabPO.clickTab).click();
return new ComponentsTabPage();
}

static goToIntegrationTestsTab() {
cy.get(integrationTestsTabPO.clickTab).click();
}
static deleteApplication(applicationName: string) {
Applications.deleteApplication(applicationName);
}

static createApplication(name: string) {
Applications.createApplication(name);
}

static createComponent(
publicGitRepo: string,
componentName: string,
integrationTestName: string,
optionalForRelease: boolean = false,
) {
addComponentStep(publicGitRepo);
reviewComponentsStep(componentName);
createBuildStep();
addIntegrationTestStep(integrationTestName, optionalForRelease);
}

static createdComponentExists(componentName: string, applicationName: string) {
this.goToComponentsTab();

Common.verifyPageTitle(applicationName);
Common.waitForLoad();
this.getComponentListItem(componentName).should('exist');
}

static getComponentListItem(application: string) {
return cy.contains(applicationDetailPagePO.item, application, { timeout: 60000 });
}

static clickActionsDropdown(dropdownItem: string) {
cy.get(actionsDropdown.dropdown).click();
cy.contains(dropdownItem).click();
}

static goToOverviewTab() {
cy.get(overviewTabPO.clickTab).click();
return new OverviewTabPage();
}

static goToComponentsTab() {
cy.get(componentsTabPO.clickTab).click();
return new ComponentsTabPage();
}

static goToIntegrationTestsTab() {
cy.get(integrationTestsTabPO.clickTab).click();
}
}

function addComponentStep(publicGitRepo: string) {
const addComponent = new AddComponentPage();
const addComponent = new AddComponentPage();

// Enter git repo URL
addComponent.setSource(publicGitRepo);
// Check if the source is validated
addComponent.waitRepoValidated();
// Setup Git Options
addComponent.clickGitOptions();
// Enter git repo URL
addComponent.setSource(publicGitRepo);
// Check if the source is validated
addComponent.waitRepoValidated();
// Setup Git Options
addComponent.clickGitOptions();

addComponent.clickNext();
addComponent.clickNext();
}


function reviewComponentsStep(componentName: string) {
const componentPage = new ComponentPage();
const componentPage = new ComponentPage();

// Edit component name
componentPage.editComponentName(componentName + "-temp");
cy.contains('div', componentName + "-temp").should('be.visible');
// Edit component name
componentPage.editComponentName(componentName + '-temp');
cy.contains('div', componentName + '-temp').should('be.visible');

// Switch back to orginal name
componentPage.editComponentName(componentName);
cy.contains('div', componentName).should('be.visible');;
// Switch back to orginal name
componentPage.editComponentName(componentName);
cy.contains('div', componentName).should('be.visible');

//Create Application
componentPage.createApplication();
//Create Application
componentPage.createApplication();
}


function createBuildStep() {
new CreateBuildPage().clickNext();
new CreateBuildPage().clickNext();
}


export function addIntegrationTestStep(displayName: string, optionalForRelease: boolean = false) {
const addIntegrationTestPage = new AddIntegrationTestPage();
const containerImage = 'quay.io/kpavic/test-bundle:pipeline'
const pipelineName = 'demo-pipeline'

addIntegrationTestPage.enterDisplayName(displayName);
addIntegrationTestPage.enterContainerImage(containerImage);
addIntegrationTestPage.enterPipelineName(pipelineName);

if (optionalForRelease) {
addIntegrationTestPage.markOptionalForRelease();
const addIntegrationTestPage = new AddIntegrationTestPage();
const containerImage = 'quay.io/kpavic/test-bundle:pipeline';
const pipelineName = 'demo-pipeline';

addIntegrationTestPage.enterDisplayName(displayName);
addIntegrationTestPage.enterContainerImage(containerImage);
addIntegrationTestPage.enterPipelineName(pipelineName);

if (optionalForRelease) {
addIntegrationTestPage.markOptionalForRelease();
}

cy.get('body').then((body) => {
if (body.find('button[type="submit"]').length > 0) {
addIntegrationTestPage.clickNext();
addIntegrationTestPage.clickNext();
} else {
addIntegrationTestPage.clickAdd();
}

cy.get('body').then(body => {
(body.find('button[type="submit"]').length > 0)? addIntegrationTestPage.clickNext() : addIntegrationTestPage.clickAdd();
});
});
}
14 changes: 7 additions & 7 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@
"dayjs": "^1.10.8",
"file-saver": "1.3.x",
"formik": "^2.2.9",
"formik-pf": "^0.0.1-alpha9",
"formik-pf": "^0.0.1-alpha10",
"history": "5.3.0",
"i18next": "^19.8.3",
"js-base64": "^2.5.1",
Expand Down

0 comments on commit 4862ca4

Please sign in to comment.