From e4635803a27ffb48e39acbfeb48e8311a7e863e8 Mon Sep 17 00:00:00 2001 From: Avneet Raj Date: Thu, 25 Jan 2024 15:42:05 +0530 Subject: [PATCH 1/2] initial commit --- .../experience.cy.js | 38 +++++++++++++++++++ .../wp-module-support/siteGen.cy.js | 2 +- 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 tests/cypress/integration/5-AI-SiteGen-onboarding-flow/experience.cy.js diff --git a/tests/cypress/integration/5-AI-SiteGen-onboarding-flow/experience.cy.js b/tests/cypress/integration/5-AI-SiteGen-onboarding-flow/experience.cy.js new file mode 100644 index 000000000..bfa7746a0 --- /dev/null +++ b/tests/cypress/integration/5-AI-SiteGen-onboarding-flow/experience.cy.js @@ -0,0 +1,38 @@ +// + +import { AdminBarCheck, BackButtonCheck, DarkBGCheck, LightBGChcek, ProgressBarCheck} from "../wp-module-support/siteGen.cy"; + +describe( 'SiteGen Experience & Site Building Step', function () { + before( () => { + cy.visit( + 'wp-admin/index.php?page=nfd-onboarding#/sitegen/step/experience' + ); + } ); + + it( 'Check for the header admin bar', () => { + AdminBarCheck(); + } ); + + it( 'Check for the existing dark background', () => { + DarkBGCheck(); + } ); + + it( 'Check for the light background', () => { + LightBGChcek(); + } ); + + it( 'Check the Progress Bar Value', () => { + ProgressBarCheck('50%'); + }); + + it( 'Check for back button and go back', () => { + BackButtonCheck('sitegen/step/experience'); + } ); + + it( 'Check for existence of experience cards', () => { + cy.get( '.nfd-sg-experience-level' ).should('be.visible'); + cy.get( '.nfd-sg-loader' ).should('be.visible'); + cy.get( '.nfd-sg-card' ).should('be.visible'); + } ); + +}); diff --git a/tests/cypress/integration/wp-module-support/siteGen.cy.js b/tests/cypress/integration/wp-module-support/siteGen.cy.js index 3db5e1fed..4512155ec 100644 --- a/tests/cypress/integration/wp-module-support/siteGen.cy.js +++ b/tests/cypress/integration/wp-module-support/siteGen.cy.js @@ -1,7 +1,7 @@ // export const AdminBarCheck = () => { - cy.get( '.nfd-onboarding-header__admin-bar' ).should('be.visible'); + cy.get( '.nfd-onboarding-header__admin-bar', {timeout:15000} ).should('be.visible'); }; export const DarkBGCheck = () => { From b77d91e67b0de42ec65ef7bb60f5942ca5ccc73b Mon Sep 17 00:00:00 2001 From: Avneet Raj Date: Thu, 25 Jan 2024 20:08:51 +0530 Subject: [PATCH 2/2] add remaining tests --- .../experience.cy.js | 32 +++++++++++++++++-- .../wp-module-support/siteGen.cy.js | 16 ++++++++++ 2 files changed, 45 insertions(+), 3 deletions(-) diff --git a/tests/cypress/integration/5-AI-SiteGen-onboarding-flow/experience.cy.js b/tests/cypress/integration/5-AI-SiteGen-onboarding-flow/experience.cy.js index bfa7746a0..a411cbc2c 100644 --- a/tests/cypress/integration/5-AI-SiteGen-onboarding-flow/experience.cy.js +++ b/tests/cypress/integration/5-AI-SiteGen-onboarding-flow/experience.cy.js @@ -1,6 +1,6 @@ // -import { AdminBarCheck, BackButtonCheck, DarkBGCheck, LightBGChcek, ProgressBarCheck} from "../wp-module-support/siteGen.cy"; +import { AdminBarCheck, BackButtonCheck, DarkBGCheck, ExperienceDetails, LightBGChcek, ProgressBarCheck} from "../wp-module-support/siteGen.cy"; describe( 'SiteGen Experience & Site Building Step', function () { before( () => { @@ -29,10 +29,36 @@ describe( 'SiteGen Experience & Site Building Step', function () { BackButtonCheck('sitegen/step/experience'); } ); - it( 'Check for existence of experience cards', () => { + it( 'Check for the existence & the count of experience level cards', () => { cy.get( '.nfd-sg-experience-level' ).should('be.visible'); cy.get( '.nfd-sg-loader' ).should('be.visible'); cy.get( '.nfd-sg-card' ).should('be.visible'); + cy.get( '.nfd-sg-card__data__option' ).should('have.length',3) + } ); + + it( 'Check and click each experience cards', () => { + const className = '.nfd-sg-card__data__option' + let options = 0; + const arr = cy.get( className ); + arr.each( () => { + if(options == 0){ + ExperienceDetails(className,'Beginner',options); + }; + if(options == 1){ + ExperienceDetails(className,'Used it some',options); + }; + if(options == 2){ + ExperienceDetails(className, 'Expert',options); + }; + options+=1; + }); + } ); + + it( 'Check for the existence of skip button and click', () => { + cy.get( '.nfd-sg-card__skip' ) + .scrollIntoView() + .should('be.visible') + .click(); + cy.url().should('not.contain', 'sitegen/step/experience'); } ); - }); diff --git a/tests/cypress/integration/wp-module-support/siteGen.cy.js b/tests/cypress/integration/wp-module-support/siteGen.cy.js index 4512155ec..3c09adb65 100644 --- a/tests/cypress/integration/wp-module-support/siteGen.cy.js +++ b/tests/cypress/integration/wp-module-support/siteGen.cy.js @@ -67,3 +67,19 @@ export const DisabledNextButton = () => { .should('be.visible') .contains( 'Next' ); }; + +export const ExperienceDetails = (classname,textValue,optionsValue) => { + cy.get(classname) + .eq(optionsValue) + .find('.nfd-sg-card__data__option__left_top') + .invoke( 'text' ) + .should('contain', textValue); + cy.get(classname) + .eq(optionsValue) + .click(); + cy.url().should('not.include', 'sitegen/step/experience',{ + timeout: 10000, + } ); + cy.go('back'); + cy.wait(2000); +};