From cef65d2639fe23b34e96db43921ec8c7deb73deb Mon Sep 17 00:00:00 2001 From: Syed-Vtex Date: Thu, 23 Mar 2023 13:05:44 +0530 Subject: [PATCH 1/8] Use multiple email addresses in B2B tests --- CHANGELOG.md | 4 ++++ ...2-add_buyer_approver_organizationA.spec.js | 10 ++++---- ...3-add_buyer_approver_organizationB.spec.js | 4 ++-- cypress-shared/support/b2b/add_users.js | 7 +----- cypress-shared/support/b2b/constants.js | 24 +++++++++++++++---- 5 files changed, 31 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 047f48ab..559230c5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ ## [Unreleased] +### Changed + +- [ENGINEERS-1228] - Use multiple email addresses in B2B tests + ## [2.4.2] - 2023-03-12 ### Changed diff --git a/cypress-shared/integration/b2b/2.2.2-add_buyer_approver_organizationA.spec.js b/cypress-shared/integration/b2b/2.2.2-add_buyer_approver_organizationA.spec.js index 57cf03fd..82f04508 100644 --- a/cypress-shared/integration/b2b/2.2.2-add_buyer_approver_organizationA.spec.js +++ b/cypress-shared/integration/b2b/2.2.2-add_buyer_approver_organizationA.spec.js @@ -41,20 +41,20 @@ describe('OrganizationA - Create a Buyer and Approver, associate Cost Center and organizationName, costCenter: costCenter1.name, role: role.Buyer1, - gmailCreds, + email: users.Buyer1, }) addUser({ organizationName, costCenter: costCenter1.name, role: role.Approver1, - gmailCreds, + email: users.Approver1, }) addUser({ organizationName, costCenter: costCenter2.name, role: role.Buyer2, - gmailCreds, + email: users.Buyer2, }) // Add/Delete users in costcenter1 - Hold @@ -64,13 +64,13 @@ describe('OrganizationA - Create a Buyer and Approver, associate Cost Center and organizationName, costCenter: costCenter2.name, role: role.OrganizationAdmin2, - gmailCreds, + email: users.OrganizationAdmin2, }) addUser({ organizationName, costCenter: costCenter2.name, role: role.Approver2, - gmailCreds, + email: users.Approver2, }) createQuote({ diff --git a/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js b/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js index fb601a76..0caa7825 100644 --- a/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js +++ b/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js @@ -32,13 +32,13 @@ describe('OrganizationB - Create a Buyer and Approver associate Cost Center and organizationName, costCenter: costCenter1.name, role: role.Buyer1, - gmailCreds, + email: users.Buyer1, }) addUser({ organizationName, costCenter: costCenter1.name, role: role.Approver1, - gmailCreds, + email: users.Approver1, }) duplicateUserTestCase({ organizationName, diff --git a/cypress-shared/support/b2b/add_users.js b/cypress-shared/support/b2b/add_users.js index d99e91f3..047a5154 100644 --- a/cypress-shared/support/b2b/add_users.js +++ b/cypress-shared/support/b2b/add_users.js @@ -43,7 +43,7 @@ export function addUserFn( }) } -export function addUser({ organizationName, costCenter, role, gmailCreds }) { +export function addUser({ organizationName, costCenter, role, email }) { const { suffixInEmail, dropDownText } = role it( @@ -51,11 +51,6 @@ export function addUser({ organizationName, costCenter, role, gmailCreds }) { updateRetry(3), () => { const userName = generateName(suffixInEmail) - const email = generateEmailWithSuffix( - gmailCreds.email, - organizationName, - suffixInEmail - ) addUserFn({ userName, email, costCenter }, dropDownText) } diff --git a/cypress-shared/support/b2b/constants.js b/cypress-shared/support/b2b/constants.js index b3543b62..05e1872e 100644 --- a/cypress-shared/support/b2b/constants.js +++ b/cypress-shared/support/b2b/constants.js @@ -131,6 +131,20 @@ const ORG_A_GMAIL_CREDS = { refreshToken: gmail.refreshToken1, } +const ORG_A_GMAIL_CREDS3 = { + email: gmail.emailId3, + clientId: gmail.clientId3, + clientSecret: gmail.clientSecret3, + refreshToken: gmail.refreshToken3, +} + +const ORG_A_GMAIL_CREDS4 = { + email: gmail.emailId4, + clientId: gmail.clientId4, + clientSecret: gmail.clientSecret4, + refreshToken: gmail.refreshToken4, +} + const ORG_B_GMAIL_CREDS = { email: gmail.emailId2, clientId: gmail.clientId2, @@ -200,7 +214,7 @@ export default { ROLE_DROP_DOWN_EMAIL_MAPPING.OrganizationAdmin1.suffixInEmail ), OrganizationAdmin2: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, + ORG_A_GMAIL_CREDS4.email, ORGANIZATION_A, ROLE_DROP_DOWN_EMAIL_MAPPING.OrganizationAdmin2.suffixInEmail ), @@ -210,7 +224,7 @@ export default { ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer1.suffixInEmail ), Buyer2: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, + ORG_A_GMAIL_CREDS3.email, ORGANIZATION_A, ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer2.suffixInEmail ), @@ -230,7 +244,7 @@ export default { ROLE_DROP_DOWN_EMAIL_MAPPING.Approver1.suffixInEmail ), Approver2: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, + ORG_A_GMAIL_CREDS3.email, ORGANIZATION_A, ROLE_DROP_DOWN_EMAIL_MAPPING.Approver2.suffixInEmail ), @@ -245,12 +259,12 @@ export default { ROLE_ID_EMAIL_MAPPING.SalesRepresentative.suffixInEmail ), SalesAdmin: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, + ORG_B_GMAIL_CREDS.email, ORGANIZATION_A, ROLE_ID_EMAIL_MAPPING.SalesAdmin.suffixInEmail ), SalesManager: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, + ORG_A_GMAIL_CREDS4.email, ORGANIZATION_A, ROLE_ID_EMAIL_MAPPING.SalesManager.suffixInEmail ), From 6f2e9d113803c446fd630b7ba153add7dc24f629 Mon Sep 17 00:00:00 2001 From: Syed-Vtex Date: Thu, 23 Mar 2023 17:11:19 +0530 Subject: [PATCH 2/8] Fix sales user testcase --- .../integration/b2b/2.14.1-sales_rep_scenarios.spec.js | 2 +- .../integration/b2b/2.14.2-sales_rep_scenarios.spec.js | 2 +- .../integration/b2b/2.4.1-add-remaining-users.spec.js | 2 +- cypress-shared/support/b2b/add_users.js | 10 +++------- cypress-shared/support/b2b/constants.js | 2 +- cypress-shared/support/b2b/login.js | 2 +- cypress-shared/support/b2b/utils.js | 1 + 7 files changed, 9 insertions(+), 12 deletions(-) diff --git a/cypress-shared/integration/b2b/2.14.1-sales_rep_scenarios.spec.js b/cypress-shared/integration/b2b/2.14.1-sales_rep_scenarios.spec.js index 69cb2fb2..ea5965cb 100644 --- a/cypress-shared/integration/b2b/2.14.1-sales_rep_scenarios.spec.js +++ b/cypress-shared/integration/b2b/2.14.1-sales_rep_scenarios.spec.js @@ -30,7 +30,7 @@ describe('Organization A - Cost Center A1 - Sales Rep Basic Scenario', () => { b2b.OrganizationB loginToStoreFront( - users.SalesRep, + users.SalesRepresentative, roleObject.SalesRepresentative.role, gmailCreds ) diff --git a/cypress-shared/integration/b2b/2.14.2-sales_rep_scenarios.spec.js b/cypress-shared/integration/b2b/2.14.2-sales_rep_scenarios.spec.js index 10a15c2d..da3604d0 100644 --- a/cypress-shared/integration/b2b/2.14.2-sales_rep_scenarios.spec.js +++ b/cypress-shared/integration/b2b/2.14.2-sales_rep_scenarios.spec.js @@ -33,7 +33,7 @@ describe('Organization A - Cost Center A1 - Sales Rep Impersonation Scenario', ( const impersonatedRole = ROLE_DROP_DOWN.Buyer loginToStoreFront( - users.SalesRep, + users.SalesRepresentative, roleObject.SalesRepresentative.role, gmailCreds ) diff --git a/cypress-shared/integration/b2b/2.4.1-add-remaining-users.spec.js b/cypress-shared/integration/b2b/2.4.1-add-remaining-users.spec.js index 5758bee9..fb33c14c 100644 --- a/cypress-shared/integration/b2b/2.4.1-add-remaining-users.spec.js +++ b/cypress-shared/integration/b2b/2.4.1-add-remaining-users.spec.js @@ -56,7 +56,7 @@ describe('Sync Checkout UI Custom & Add Sales Users via Graphql', () => { const roles = Object.keys(ROLE_ID_EMAIL_MAPPING) roles.forEach((r) => { - addUserViaGraphql(gmailCreds, r) + addUserViaGraphql(users, r) }) preserveCookie() diff --git a/cypress-shared/support/b2b/add_users.js b/cypress-shared/support/b2b/add_users.js index 047a5154..478363a3 100644 --- a/cypress-shared/support/b2b/add_users.js +++ b/cypress-shared/support/b2b/add_users.js @@ -232,14 +232,14 @@ export function updateCostCenterOftheUser({ ) } -export function addUserViaGraphql(gmailCreds, roleKey) { +export function addUserViaGraphql(users, roleKey) { const { organizationName, costCenter1 } = b2b.OrganizationA it( `Adding ${roleKey} in ${organizationName} with ${costCenter1.name}`, updateRetry(3), () => { - const { suffixInEmail, role } = ROLE_ID_EMAIL_MAPPING[roleKey] + const { role } = ROLE_ID_EMAIL_MAPPING[roleKey] // Define constants const APP_NAME = 'vtex.storefront-permissions' const APP_VERSION = '1.x' @@ -259,11 +259,7 @@ export function addUserViaGraphql(gmailCreds, roleKey) { orgId: organizationItems[organizationName], costId: organizationItems[costCenter1.name], name: generateName(role), - email: generateEmailWithSuffix( - gmailCreds.email, - organizationName, - suffixInEmail - ), + email: users[roleKey], } expect(variables.roleId).to.not.be.undefined diff --git a/cypress-shared/support/b2b/constants.js b/cypress-shared/support/b2b/constants.js index 05e1872e..34a863a6 100644 --- a/cypress-shared/support/b2b/constants.js +++ b/cypress-shared/support/b2b/constants.js @@ -253,7 +253,7 @@ export default { ORGANIZATION_A, ROLE_DROP_DOWN_EMAIL_MAPPING.Approver3.suffixInEmail ), - SalesRep: generateEmailWithSuffix( + SalesRepresentative: generateEmailWithSuffix( ORG_A_GMAIL_CREDS.email, ORGANIZATION_A, ROLE_ID_EMAIL_MAPPING.SalesRepresentative.suffixInEmail diff --git a/cypress-shared/support/b2b/login.js b/cypress-shared/support/b2b/login.js index 1bb15fd6..50279ba1 100644 --- a/cypress-shared/support/b2b/login.js +++ b/cypress-shared/support/b2b/login.js @@ -43,7 +43,7 @@ export function storeUserCookie(email) { export function loginToStoreFront(email, role, gmailCreds) { it( - `Logging in to storefront as ${role}`, + `Logging in to storefront as ${role} with email - ${email}`, { defaultCommandTimeout: 60000, retries: 1 }, () => { cy.qe(`Logging in to storefront as ${role}`) diff --git a/cypress-shared/support/b2b/utils.js b/cypress-shared/support/b2b/utils.js index 1ada1bb6..72d98d6e 100644 --- a/cypress-shared/support/b2b/utils.js +++ b/cypress-shared/support/b2b/utils.js @@ -62,6 +62,7 @@ export const OTHER_ROLES = [ ] export const ROLE_ID_EMAIL_MAPPING = { + // Below Roles should match with users roles in b2b/constants.js SalesAdmin: { role: OTHER_ROLES[0], suffixInEmail: 'sa' }, SalesRepresentative: { role: OTHER_ROLES[1], suffixInEmail: 'sr' }, SalesManager: { role: OTHER_ROLES[2], suffixInEmail: 'sm' }, From 3c44ff6b5620195bdd5dd9990a17d235d317d8df Mon Sep 17 00:00:00 2001 From: Syed-Vtex Date: Wed, 12 Apr 2023 15:36:53 +0530 Subject: [PATCH 3/8] Improved/Fixed B2B new login user testcase --- CHANGELOG.md | 3 ++ cypress-shared/support/b2b/login.js | 70 ++++++++++++++++++----------- cypress-shared/support/extract.js | 29 +++++++----- 3 files changed, 64 insertions(+), 38 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9f89d4a5..cd8aaf92 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,8 @@ ## [Unreleased] +### Changed +- Improved/Fixed B2B new login user testcase + ### Changed - E2E Tests improvements diff --git a/cypress-shared/support/b2b/login.js b/cypress-shared/support/b2b/login.js index 1bb15fd6..61d2a5d4 100644 --- a/cypress-shared/support/b2b/login.js +++ b/cypress-shared/support/b2b/login.js @@ -4,7 +4,7 @@ import selectors from '../common/selectors.js' export function visitHomePage() { cy.getVtexItems().then((vtex) => { cy.url().then((url) => { - if (url.includes('blank') || url !== vtex.baseUrl) { + if (url.includes('blank') || url !== `${vtex.baseUrl}/`) { cy.intercept('POST', 'https://rc.vtex.com.br/api/events').as('EVENTS') cy.qe( 'Visit home page/storefront and wait for EVENTS api to get called' @@ -44,7 +44,7 @@ export function storeUserCookie(email) { export function loginToStoreFront(email, role, gmailCreds) { it( `Logging in to storefront as ${role}`, - { defaultCommandTimeout: 60000, retries: 1 }, + { defaultCommandTimeout: 80000, retries: 1 }, () => { cy.qe(`Logging in to storefront as ${role}`) cy.addDelayBetweenRetries(10000) @@ -55,40 +55,60 @@ export function loginToStoreFront(email, role, gmailCreds) { // If we already logged in to this user in previous testcase, then use that cookie to re-login loginWithCookiesStoredInJSON(organization[email]) } else { + let currentAccessToken + visitHomePage() + cy.get('body').then(async ($body) => { - if ($body.find(selectors.SignInBtn).length) { - const accessToken = await getAccessToken(email, gmailCreds) + if ($body.find(selectors.ProfileLabel).length) { + cy.qe('Already logged in') + } else if ($body.find(selectors.SignInBtn).length) { + if (!$body.find(selectors.Token).length) { + currentAccessToken = await getAccessToken( + email, + gmailCreds, + 2, + null + ) + cy.intercept('POST', '**/startlogin').as('startlogin') + cy.intercept('POST', '**/accesskey/send').as('send') + cy.qe('SignInBtn should be visible and click it') + cy.get(selectors.SignInBtn).should('be.visible').click() + cy.qe('AccessCode Btn should be visible and click it') + cy.get(selectors.AccessCode).should('be.visible').click() + cy.qe(`Type ${email} in Email field`) + cy.get(selectors.Email) + .should('be.visible') + .focus() + .clear() + .type(email) + cy.qe(`Click submit btn`) + cy.get(selectors.Submit) + .click() + .then(async () => { + cy.wait('@startlogin') + .its('response.statusCode') + .should('eq', 200) + cy.qe('Wait for startLogin and send API') + cy.wait('@send') + .its('response.statusCode') + .should('eq', 200) + }) + } - cy.intercept('POST', '**/startlogin').as('startlogin') - cy.intercept('POST', '**/accesskey/send').as('send') - cy.qe('SignInBtn should be visible and click it') - cy.get(selectors.SignInBtn).should('be.visible').click() - cy.qe('AccessCode Btn should be visible and click it') - cy.get(selectors.AccessCode).should('be.visible').click() - cy.qe(`Type ${email} in Email field`) - cy.get(selectors.Email) + cy.get(selectors.Token) .should('be.visible') - .focus() - .clear() - .type(email) - cy.qe(`Click submit btn`) - cy.get(selectors.Submit) - .click() .then(async () => { - cy.wait('@startlogin') - .its('response.statusCode') - .should('eq', 200) - cy.qe('Wait for startLogin and send API') - cy.wait('@send').its('response.statusCode').should('eq', 200) const newAccessToken = await getAccessToken( email, gmailCreds, - accessToken + 10, + currentAccessToken ) cy.qe(`Type ${newAccessToken} in token field`) cy.get(selectors.Token).clear().type(newAccessToken) + cy.get(selectors.Token).then cy.qe(`Click Submit Btn`) cy.get(selectors.Submit).click() cy.waitForSession() @@ -96,8 +116,6 @@ export function loginToStoreFront(email, role, gmailCreds) { cy.get(selectors.ProfileLabel).should('be.visible') storeUserCookie(email) }) - } else if ($body.find(selectors.ProfileLabel).length) { - cy.qe('Already logged in') } else { cy.qe('SignInBtn is not found in the page') throw new Error('Selectors not loaded within time period') diff --git a/cypress-shared/support/extract.js b/cypress-shared/support/extract.js index b16ba6dc..6fe29fc2 100644 --- a/cypress-shared/support/extract.js +++ b/cypress-shared/support/extract.js @@ -6,22 +6,27 @@ function extractAccessCode(message) { if (message) { const regex = /(\d.*)<\/strong>/ - return message.includes('access code') ? message.match(regex)[1] : '0' + return message.includes('access code') ? message.match(regex)[1] : null } - return '0' + return null } -export async function getAccessToken(email, gmailCreds, accessToken = null) { +export async function getAccessToken( + email, + gmailCreds, + totalRetry, + accessToken = null +) { + /* eslint-disable no-await-in-loop */ const gmail = new GmailAPI(gmailCreds) - const ToEmail = email.replace('+', '%2B') - let currentAccessToken - const totalRetry = 8 await gmail.getAcceToken(gmailCreds) + const ToEmail = email.replace('+', '%2B') + let currentAccessToken = null - /* eslint-disable no-await-in-loop */ - for (let currentRetry = 0; currentRetry <= totalRetry; currentRetry++) { + for (let currentRetry = 1; currentRetry <= totalRetry; currentRetry++) { + await delay(5500) currentAccessToken = extractAccessCode( await gmail.readInboxContent( new URLSearchParams( @@ -30,10 +35,10 @@ export async function getAccessToken(email, gmailCreds, accessToken = null) { gmailCreds ) ) - if (accessToken === null || currentAccessToken !== accessToken) { - return currentAccessToken + if (currentAccessToken !== accessToken) { + break } - - await delay(5500) } + + return currentAccessToken } From fa7361b9cebc28cdfa3e31d0544c413a4bd55a84 Mon Sep 17 00:00:00 2001 From: Syed-Vtex Date: Thu, 13 Apr 2023 15:01:03 +0530 Subject: [PATCH 4/8] Include email address in testcase title --- cypress-shared/support/b2b/login.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cypress-shared/support/b2b/login.js b/cypress-shared/support/b2b/login.js index 61d2a5d4..f3d5d9a9 100644 --- a/cypress-shared/support/b2b/login.js +++ b/cypress-shared/support/b2b/login.js @@ -43,7 +43,7 @@ export function storeUserCookie(email) { export function loginToStoreFront(email, role, gmailCreds) { it( - `Logging in to storefront as ${role}`, + `Logging in to storefront with ${email} as ${role}`, { defaultCommandTimeout: 80000, retries: 1 }, () => { cy.qe(`Logging in to storefront as ${role}`) From 50d399ca97ca035882bbdb1a59fcdbf58e743c8c Mon Sep 17 00:00:00 2001 From: Syed-Vtex Date: Thu, 13 Apr 2023 16:49:47 +0530 Subject: [PATCH 5/8] Use right email address in e2e test --- ...1.1-create_&_approve_organizationA.spec.js | 2 +- ...ations_requests_from_organizationB.spec.js | 4 +- ....3-organization_negative_testcases.spec.js | 2 +- ...pprover_scenarios_orgA_costcenter2.spec.js | 12 +- .../b2b/2.11-approver_scenarios_orgB.spec.js | 3 +- .../b2b/2.12.1-sales_admin_scenarios.spec.js | 7 +- .../b2b/2.12.2-sales_admin_scenarios.spec.js | 8 +- .../2.13.1-sales_manager_scenarios.spec.js | 11 +- .../2.13.2-sales_manager_scenarios.spec.js | 12 +- .../b2b/2.14.1-sales_rep_scenarios.spec.js | 8 +- .../b2b/2.14.2-sales_rep_scenarios.spec.js | 9 +- ...1-add_buyer_approver_organizationA.spec.js | 22 +- ...2-add_buyer_approver_organizationA.spec.js | 29 +-- ...3-add_buyer_approver_organizationB.spec.js | 10 +- .../b2b/2.4.1-add-remaining-users.spec.js | 8 +- ...tion_by_adding_dolar_sales_channel.spec.js | 10 +- ..._by_adding_principal_sales_channel.spec.js | 2 +- .../2.5.1-buyer_scenarios_orgA_costA1.spec.js | 4 +- .../2.5.2-buyer_scenarios_orgA_costA1.spec.js | 5 +- .../2.6.1-buyer_scenarios_orgA_costA2.spec.js | 12 +- .../2.6.2-buyer_scenarios_orgA_costA2.spec.js | 4 +- .../2.7-buyer_scenarios_orgB_costB1.spec.js | 3 +- ...-organization_admin_scenarios-orgA.spec.js | 20 +- ...-organization_admin_scenarios-orgA.spec.js | 8 +- .../b2b/2.9-approver_scenarios_orgA.spec.js | 12 +- cypress-shared/support/b2b/constants.js | 197 +++++++++++------- cypress-shared/support/b2b/login.js | 2 +- 27 files changed, 194 insertions(+), 232 deletions(-) diff --git a/cypress-shared/integration/b2b/2.1.1-create_&_approve_organizationA.spec.js b/cypress-shared/integration/b2b/2.1.1-create_&_approve_organizationA.spec.js index a8c311e7..0880c94f 100644 --- a/cypress-shared/integration/b2b/2.1.1-create_&_approve_organizationA.spec.js +++ b/cypress-shared/integration/b2b/2.1.1-create_&_approve_organizationA.spec.js @@ -15,7 +15,7 @@ describe('Create & Approve OrganizationA', () => { createOrganizationTestCase( { name: organizationName, - email: users.OrganizationAdmin1, + email: users.OrganizationAdmin1.email, }, { costCenterName: costCenter1.name, diff --git a/cypress-shared/integration/b2b/2.1.2-multi_organizations_requests_from_organizationB.spec.js b/cypress-shared/integration/b2b/2.1.2-multi_organizations_requests_from_organizationB.spec.js index d395aeaf..ac6123bd 100644 --- a/cypress-shared/integration/b2b/2.1.2-multi_organizations_requests_from_organizationB.spec.js +++ b/cypress-shared/integration/b2b/2.1.2-multi_organizations_requests_from_organizationB.spec.js @@ -11,7 +11,7 @@ describe('Create, Decline OrganizationB', () => { cy.clearLocalStorage() }) loginViaCookies({ storeFrontCookie: false }) - const email = b2b.OrganizationB.users.OrganizationAdmin1 + const { email } = b2b.OrganizationB.users.OrganizationAdmin1 const name = b2b.OrganizationB.organizationName const costCenterName = b2b.OrganizationB.costCenter1.name const [costCenterAddress] = b2b.OrganizationB.costCenter1.addresses @@ -31,7 +31,7 @@ describe('Create, Decline OrganizationB', () => { createOrganizationTestCase( { name: organizationName, - email: users.OrganizationAdmin1, + email: users.OrganizationAdmin1.email, }, { costCenterName: costCenter1.name, diff --git a/cypress-shared/integration/b2b/2.1.3-organization_negative_testcases.spec.js b/cypress-shared/integration/b2b/2.1.3-organization_negative_testcases.spec.js index c29edbb8..408947d3 100644 --- a/cypress-shared/integration/b2b/2.1.3-organization_negative_testcases.spec.js +++ b/cypress-shared/integration/b2b/2.1.3-organization_negative_testcases.spec.js @@ -8,7 +8,7 @@ import b2b from '../../support/b2b/constants.js' describe('Organization Negative TestCases', () => { loginViaCookies({ storeFrontCookie: false }) - const email = b2b.OrganizationA.users.OrganizationAdmin1 + const { email } = b2b.OrganizationA.users.OrganizationAdmin1 createOrganizationWithoutCostCenterNameAndAddress( b2b.OrganizationA.organizationName, diff --git a/cypress-shared/integration/b2b/2.10-approver_scenarios_orgA_costcenter2.spec.js b/cypress-shared/integration/b2b/2.10-approver_scenarios_orgA_costcenter2.spec.js index fd336313..e4fbdf59 100644 --- a/cypress-shared/integration/b2b/2.10-approver_scenarios_orgA_costcenter2.spec.js +++ b/cypress-shared/integration/b2b/2.10-approver_scenarios_orgA_costcenter2.spec.js @@ -28,19 +28,13 @@ import { describe('Organization A - Cost Center A2 - Approver Scenario', () => { loginViaCookies({ storeFrontCookie: false }) - const { - organizationName, - quotes, - nonAvailableProduct, - costCenter2, - users, - gmailCreds, - } = b2b.OrganizationA + const { organizationName, quotes, nonAvailableProduct, costCenter2, users } = + b2b.OrganizationA const { organizationName: organizationB, quotes: organizationBquotes } = b2b.OrganizationB - loginToStoreFront(users.Approver2, ROLE_DROP_DOWN.Approver, gmailCreds) + loginToStoreFront(users.Approver2, ROLE_DROP_DOWN.Approver) verifySession(b2b.OrganizationA, costCenter2.name, ROLE_DROP_DOWN.Approver) productShouldNotbeAvailableTestCase(nonAvailableProduct) quoteShouldbeVisibleTestCase( diff --git a/cypress-shared/integration/b2b/2.11-approver_scenarios_orgB.spec.js b/cypress-shared/integration/b2b/2.11-approver_scenarios_orgB.spec.js index e9419670..c26f55c6 100644 --- a/cypress-shared/integration/b2b/2.11-approver_scenarios_orgB.spec.js +++ b/cypress-shared/integration/b2b/2.11-approver_scenarios_orgB.spec.js @@ -31,13 +31,12 @@ describe('Organization B - Cost Center B1 - Approver Scenario', () => { users, quotes, organizationName, - gmailCreds, } = b2b.OrganizationB const { organizationName: organizationA, quotes: organizationAQuotes } = b2b.OrganizationA - loginToStoreFront(users.Approver1, ROLE_DROP_DOWN.Approver, gmailCreds) + loginToStoreFront(users.Approver1, ROLE_DROP_DOWN.Approver) verifySession(b2b.OrganizationB, costCenter1.name, ROLE_DROP_DOWN.Approver) productShouldNotbeAvailableTestCase(nonAvailableProduct) quoteShouldbeVisibleTestCase( diff --git a/cypress-shared/integration/b2b/2.12.1-sales_admin_scenarios.spec.js b/cypress-shared/integration/b2b/2.12.1-sales_admin_scenarios.spec.js index cd7d2697..12e3cc67 100644 --- a/cypress-shared/integration/b2b/2.12.1-sales_admin_scenarios.spec.js +++ b/cypress-shared/integration/b2b/2.12.1-sales_admin_scenarios.spec.js @@ -25,13 +25,12 @@ import { salesAdminQuotesAccess } from '../../support/b2b/impersonation_quote_ac describe('Organization A - Cost Center A1 - Sales Admin Basic Scenario', () => { loginViaCookies({ storeFrontCookie: false }) - const { nonAvailableProduct, costCenter1, users, quotes, gmailCreds } = - b2b.OrganizationA + const { nonAvailableProduct, costCenter1, users, quotes } = b2b.OrganizationA const { organizationName: organizationB, quotes: organizationBQuote } = b2b.OrganizationB - loginToStoreFront(users.SalesAdmin, roleObject.SalesAdmin.role, gmailCreds) + loginToStoreFront(users.SalesAdmin, roleObject.SalesAdmin.role) verifySession(b2b.OrganizationA, costCenter1.name, roleObject.SalesAdmin.role) productShouldNotbeAvailableTestCase(nonAvailableProduct) @@ -39,7 +38,7 @@ describe('Organization A - Cost Center A1 - Sales Admin Basic Scenario', () => { userShouldNotImpersonateThisUser( roleObject.SalesAdmin.role, roleObject.SalesManager.role, - users.SalesManager + users.SalesManager.email ) salesAdminQuotesAccess(b2b.OrganizationA, organizationB, organizationBQuote) diff --git a/cypress-shared/integration/b2b/2.12.2-sales_admin_scenarios.spec.js b/cypress-shared/integration/b2b/2.12.2-sales_admin_scenarios.spec.js index c7f56420..bf97abf9 100644 --- a/cypress-shared/integration/b2b/2.12.2-sales_admin_scenarios.spec.js +++ b/cypress-shared/integration/b2b/2.12.2-sales_admin_scenarios.spec.js @@ -29,20 +29,20 @@ import { salesAdminQuotesAccess } from '../../support/b2b/impersonation_quote_ac describe('Organization A - Cost Center A1 - Sales Admin Impersonation Scenario', () => { loginViaCookies({ storeFrontCookie: false }) - const { product, costCenter1, users, quotes, gmailCreds } = b2b.OrganizationA + const { product, costCenter1, users, quotes } = b2b.OrganizationA const { organizationName: organizationB, quotes: organizationBQuote } = b2b.OrganizationB const impersonatedRole = ROLE_DROP_DOWN.Approver - loginToStoreFront(users.SalesAdmin, roleObject.SalesAdmin.role, gmailCreds) + loginToStoreFront(users.SalesAdmin, roleObject.SalesAdmin.role) verifySession(b2b.OrganizationA, costCenter1.name, roleObject.SalesAdmin.role) salesUserShouldImpersonateNonSalesUser( roleObject.SalesAdmin.role, impersonatedRole, - users.Approver1 + users.Approver1.email ) updateQuote(quotes.Buyer.quotes1, { discount: '20' }) @@ -63,7 +63,7 @@ describe('Organization A - Cost Center A1 - Sales Admin Impersonation Scenario', role: roleObject.SalesManager.role, impersonatedRole, }) - searchQuote(quote, users.Approver1) + searchQuote(quote, users.Approver1.email) stopImpersonation( b2b.OrganizationA, costCenter1.name, diff --git a/cypress-shared/integration/b2b/2.13.1-sales_manager_scenarios.spec.js b/cypress-shared/integration/b2b/2.13.1-sales_manager_scenarios.spec.js index 0700bbe8..6aaeb11c 100644 --- a/cypress-shared/integration/b2b/2.13.1-sales_manager_scenarios.spec.js +++ b/cypress-shared/integration/b2b/2.13.1-sales_manager_scenarios.spec.js @@ -19,17 +19,12 @@ import { salesManagerQuotesAccess } from '../../support/b2b/impersonation_quote_ describe('Organization A - Cost Center A1 - Sales Manager Basic Scenario', () => { loginViaCookies({ storeFrontCookie: false }) - const { nonAvailableProduct, users, costCenter1, quotes, gmailCreds } = - b2b.OrganizationA + const { nonAvailableProduct, users, costCenter1, quotes } = b2b.OrganizationA const { organizationName: organizationB, quotes: organizationBQuote } = b2b.OrganizationB - loginToStoreFront( - users.SalesManager, - roleObject.SalesManager.role, - gmailCreds - ) + loginToStoreFront(users.SalesManager, roleObject.SalesManager.role) verifySession( b2b.OrganizationA, costCenter1.name, @@ -38,7 +33,7 @@ describe('Organization A - Cost Center A1 - Sales Manager Basic Scenario', () => userShouldNotImpersonateThisUser( roleObject.SalesManager.role, roleObject.SalesRepresentative.role, - users.SalesRep + users.SalesRep.email ) productShouldNotbeAvailableTestCase(nonAvailableProduct) salesManagerQuotesAccess(b2b.OrganizationA, organizationB, organizationBQuote) diff --git a/cypress-shared/integration/b2b/2.13.2-sales_manager_scenarios.spec.js b/cypress-shared/integration/b2b/2.13.2-sales_manager_scenarios.spec.js index 053928aa..54b2c539 100644 --- a/cypress-shared/integration/b2b/2.13.2-sales_manager_scenarios.spec.js +++ b/cypress-shared/integration/b2b/2.13.2-sales_manager_scenarios.spec.js @@ -19,16 +19,12 @@ import { salesManagerQuotesAccess } from '../../support/b2b/impersonation_quote_ describe('Organization A - Cost Center A1 - Sales Manager Impersonation Scenario', () => { loginViaCookies({ storeFrontCookie: false }) - const { users, product, costCenter1, gmailCreds } = b2b.OrganizationA + const { users, product, costCenter1 } = b2b.OrganizationA const { organizationName: organizationB, quotes: organizationBQuote } = b2b.OrganizationB - loginToStoreFront( - users.SalesManager, - roleObject.SalesManager.role, - gmailCreds - ) + loginToStoreFront(users.SalesManager, roleObject.SalesManager.role) verifySession( b2b.OrganizationA, costCenter1.name, @@ -40,7 +36,7 @@ describe('Organization A - Cost Center A1 - Sales Manager Impersonation Scenario salesUserShouldImpersonateNonSalesUser( roleObject.SalesManager.role, impersonatedRole, - users.OrganizationAdmin1 + users.OrganizationAdmin1.email ) const quote = 'IMPERSONATE_QUOTE_2' @@ -52,7 +48,7 @@ describe('Organization A - Cost Center A1 - Sales Manager Impersonation Scenario role: roleObject.SalesManager.role, impersonatedRole, }) - searchQuote(quote, users.OrganizationAdmin1) + searchQuote(quote, users.OrganizationAdmin1.email) stopImpersonation( b2b.OrganizationA, costCenter1.name, diff --git a/cypress-shared/integration/b2b/2.14.1-sales_rep_scenarios.spec.js b/cypress-shared/integration/b2b/2.14.1-sales_rep_scenarios.spec.js index ea5965cb..146b83c5 100644 --- a/cypress-shared/integration/b2b/2.14.1-sales_rep_scenarios.spec.js +++ b/cypress-shared/integration/b2b/2.14.1-sales_rep_scenarios.spec.js @@ -23,16 +23,14 @@ import { salesRepQuotesAccess } from '../../support/b2b/impersonation_quote_acce describe('Organization A - Cost Center A1 - Sales Rep Basic Scenario', () => { loginViaCookies({ storeFrontCookie: false }) - const { nonAvailableProduct, users, costCenter1, quotes, gmailCreds } = - b2b.OrganizationA + const { nonAvailableProduct, users, costCenter1, quotes } = b2b.OrganizationA const { organizationName: organizationB, quotes: organizationBQuote } = b2b.OrganizationB loginToStoreFront( users.SalesRepresentative, - roleObject.SalesRepresentative.role, - gmailCreds + roleObject.SalesRepresentative.role ) verifySession( b2b.OrganizationA, @@ -46,7 +44,7 @@ describe('Organization A - Cost Center A1 - Sales Rep Basic Scenario', () => { userShouldNotImpersonateThisUser( roleObject.SalesRepresentative.role, roleObject.SalesManager.role, - users.SalesManager + users.SalesManager.email ) searchQuote(quotes.SalesRep.updateQuote) const price = '30.00' diff --git a/cypress-shared/integration/b2b/2.14.2-sales_rep_scenarios.spec.js b/cypress-shared/integration/b2b/2.14.2-sales_rep_scenarios.spec.js index da3604d0..ede54b34 100644 --- a/cypress-shared/integration/b2b/2.14.2-sales_rep_scenarios.spec.js +++ b/cypress-shared/integration/b2b/2.14.2-sales_rep_scenarios.spec.js @@ -25,7 +25,7 @@ import { salesRepQuotesAccess } from '../../support/b2b/impersonation_quote_acce describe('Organization A - Cost Center A1 - Sales Rep Impersonation Scenario', () => { loginViaCookies({ storeFrontCookie: false }) - const { users, product, costCenter1, quotes, gmailCreds } = b2b.OrganizationA + const { users, product, costCenter1, quotes } = b2b.OrganizationA const { organizationName: organizationB, quotes: organizationBQuote } = b2b.OrganizationB @@ -34,8 +34,7 @@ describe('Organization A - Cost Center A1 - Sales Rep Impersonation Scenario', ( loginToStoreFront( users.SalesRepresentative, - roleObject.SalesRepresentative.role, - gmailCreds + roleObject.SalesRepresentative.role ) verifySession( b2b.OrganizationA, @@ -46,7 +45,7 @@ describe('Organization A - Cost Center A1 - Sales Rep Impersonation Scenario', ( salesUserShouldImpersonateNonSalesUser( roleObject.SalesRepresentative.role, impersonatedRole, - users.Buyer1 + users.Buyer1.email ) searchQuote(quotes.SalesRep.updateQuote) @@ -64,7 +63,7 @@ describe('Organization A - Cost Center A1 - Sales Rep Impersonation Scenario', ( role: roleObject.SalesRepresentative.role, impersonatedRole, }) - searchQuote(quote, users.Buyer1) + searchQuote(quote, users.Buyer1.email) stopImpersonation( b2b.OrganizationA, costCenter1.name, diff --git a/cypress-shared/integration/b2b/2.2.1-add_buyer_approver_organizationA.spec.js b/cypress-shared/integration/b2b/2.2.1-add_buyer_approver_organizationA.spec.js index d12bce36..65807c81 100644 --- a/cypress-shared/integration/b2b/2.2.1-add_buyer_approver_organizationA.spec.js +++ b/cypress-shared/integration/b2b/2.2.1-add_buyer_approver_organizationA.spec.js @@ -21,22 +21,12 @@ import { verifyBindings } from '../../support/b2b/graphql.js' describe('OrganizationA - Create a Buyer and Approver, associate Cost Center and assign payment terms', () => { loginViaCookies({ storeFrontCookie: false }) - const { - organizationName, - costCenter1, - costCenter2, - costCenter3, - users, - gmailCreds, - } = b2b.OrganizationA - - verifyBindings(users.OrganizationAdmin1, true) - - loginToStoreFront( - users.OrganizationAdmin1, - ROLE_DROP_DOWN.OrganizationAdmin, - gmailCreds - ) + const { organizationName, costCenter1, costCenter2, costCenter3, users } = + b2b.OrganizationA + + verifyBindings(users.OrganizationAdmin1.email, true) + + loginToStoreFront(users.OrganizationAdmin1, ROLE_DROP_DOWN.OrganizationAdmin) setOrganizationIdInJSON(organizationName, costCenter1.name) addPaymentTermsCollectionPriceTablesTestCase(b2b.OrganizationA) diff --git a/cypress-shared/integration/b2b/2.2.2-add_buyer_approver_organizationA.spec.js b/cypress-shared/integration/b2b/2.2.2-add_buyer_approver_organizationA.spec.js index 82f04508..5b3ffce3 100644 --- a/cypress-shared/integration/b2b/2.2.2-add_buyer_approver_organizationA.spec.js +++ b/cypress-shared/integration/b2b/2.2.2-add_buyer_approver_organizationA.spec.js @@ -19,42 +19,31 @@ import { verifyBindings } from '../../support/b2b/graphql.js' describe('OrganizationA - Create a Buyer and Approver, associate Cost Center and assign payment terms', () => { loginViaCookies({ storeFrontCookie: false }) - const { - organizationName, - costCenter1, - costCenter2, - users, - product, - quotes, - gmailCreds, - } = b2b.OrganizationA + const { organizationName, costCenter1, costCenter2, users, product, quotes } = + b2b.OrganizationA - verifyBindings(users.OrganizationAdmin1, true) + verifyBindings(users.OrganizationAdmin1.email, true) - loginToStoreFront( - users.OrganizationAdmin1, - ROLE_DROP_DOWN.OrganizationAdmin, - gmailCreds - ) + loginToStoreFront(users.OrganizationAdmin1, ROLE_DROP_DOWN.OrganizationAdmin) addUser({ organizationName, costCenter: costCenter1.name, role: role.Buyer1, - email: users.Buyer1, + email: users.Buyer1.email, }) addUser({ organizationName, costCenter: costCenter1.name, role: role.Approver1, - email: users.Approver1, + email: users.Approver1.email, }) addUser({ organizationName, costCenter: costCenter2.name, role: role.Buyer2, - email: users.Buyer2, + email: users.Buyer2.email, }) // Add/Delete users in costcenter1 - Hold @@ -64,13 +53,13 @@ describe('OrganizationA - Create a Buyer and Approver, associate Cost Center and organizationName, costCenter: costCenter2.name, role: role.OrganizationAdmin2, - email: users.OrganizationAdmin2, + email: users.OrganizationAdmin2.email, }) addUser({ organizationName, costCenter: costCenter2.name, role: role.Approver2, - email: users.Approver2, + email: users.Approver2.email, }) createQuote({ diff --git a/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js b/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js index 0caa7825..964550ef 100644 --- a/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js +++ b/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js @@ -21,24 +21,20 @@ describe('OrganizationB - Create a Buyer and Approver associate Cost Center and const { organizationName, costCenter1, users, product, quotes, gmailCreds } = b2b.OrganizationB - loginToStoreFront( - users.OrganizationAdmin1, - ROLE_DROP_DOWN.OrganizationAdmin, - gmailCreds - ) + loginToStoreFront(users.OrganizationAdmin1, ROLE_DROP_DOWN.OrganizationAdmin) setOrganizationIdInJSON(organizationName, costCenter1.name) addPaymentTermsCollectionPriceTablesTestCase(b2b.OrganizationB) addUser({ organizationName, costCenter: costCenter1.name, role: role.Buyer1, - email: users.Buyer1, + email: users.Buyer1.email, }) addUser({ organizationName, costCenter: costCenter1.name, role: role.Approver1, - email: users.Approver1, + email: users.Approver1.email, }) duplicateUserTestCase({ organizationName, diff --git a/cypress-shared/integration/b2b/2.4.1-add-remaining-users.spec.js b/cypress-shared/integration/b2b/2.4.1-add-remaining-users.spec.js index c92b6801..72f0900d 100644 --- a/cypress-shared/integration/b2b/2.4.1-add-remaining-users.spec.js +++ b/cypress-shared/integration/b2b/2.4.1-add-remaining-users.spec.js @@ -14,16 +14,12 @@ import { syncCheckoutUICustom } from '../../support/common/testcase.js' import b2b from '../../support/b2b/constants.js' import { loginToStoreFront } from '../../support/b2b/login.js' -const { users, gmailCreds } = b2b.OrganizationA +const { users } = b2b.OrganizationA describe('Sync Checkout UI Custom & Add Sales Users via Graphql', () => { loginViaCookies({ storeFrontCookie: false }) - loginToStoreFront( - users.OrganizationAdmin1, - ROLE_DROP_DOWN.OrganizationAdmin, - gmailCreds - ) + loginToStoreFront(users.OrganizationAdmin1, ROLE_DROP_DOWN.OrganizationAdmin) it('Set roles in organization JSON', updateRetry(3), () => { cy.getVtexItems().then((vtex) => { diff --git a/cypress-shared/integration/b2b/2.4.2-hide_organization_by_adding_dolar_sales_channel.spec.js b/cypress-shared/integration/b2b/2.4.2-hide_organization_by_adding_dolar_sales_channel.spec.js index 8fc985d5..ff2ddc5c 100644 --- a/cypress-shared/integration/b2b/2.4.2-hide_organization_by_adding_dolar_sales_channel.spec.js +++ b/cypress-shared/integration/b2b/2.4.2-hide_organization_by_adding_dolar_sales_channel.spec.js @@ -14,7 +14,7 @@ import { } from '../../support/b2b/graphql.js' import { loginToStoreFront } from '../../support/b2b/login.js' -const { users, gmailCreds } = b2b.OrganizationB +const { users } = b2b.OrganizationB describe('Add Binding which hides Organization in profile page', () => { loginViaCookies({ storeFrontCookie: false }) @@ -23,13 +23,9 @@ describe('Add Binding which hides Organization in profile page', () => { verifySalesChannel(0) - verifyBindings(users.OrganizationAdmin1, false) + verifyBindings(users.OrganizationAdmin1.email, false) - loginToStoreFront( - users.OrganizationAdmin1, - ROLE_DROP_DOWN.OrganizationAdmin, - gmailCreds - ) + loginToStoreFront(users.OrganizationAdmin1, ROLE_DROP_DOWN.OrganizationAdmin) it('Verify Organization is not showing up', updateRetry(2), () => { cy.reloadOnLastNAttempts(1) diff --git a/cypress-shared/integration/b2b/2.4.3-show_organization_by_adding_principal_sales_channel.spec.js b/cypress-shared/integration/b2b/2.4.3-show_organization_by_adding_principal_sales_channel.spec.js index c3e591b1..eecb488e 100644 --- a/cypress-shared/integration/b2b/2.4.3-show_organization_by_adding_principal_sales_channel.spec.js +++ b/cypress-shared/integration/b2b/2.4.3-show_organization_by_adding_principal_sales_channel.spec.js @@ -22,7 +22,7 @@ describe('Add binding which shows Organization in profile page', () => { verifySalesChannel(1) - verifyBindings(users.OrganizationAdmin1, true) + verifyBindings(users.OrganizationAdmin1.email, true) loginToStoreFront( users.OrganizationAdmin1, diff --git a/cypress-shared/integration/b2b/2.5.1-buyer_scenarios_orgA_costA1.spec.js b/cypress-shared/integration/b2b/2.5.1-buyer_scenarios_orgA_costA1.spec.js index b2ac6b8a..2b9b4f57 100644 --- a/cypress-shared/integration/b2b/2.5.1-buyer_scenarios_orgA_costA1.spec.js +++ b/cypress-shared/integration/b2b/2.5.1-buyer_scenarios_orgA_costA1.spec.js @@ -38,7 +38,7 @@ describe('Organization A - Cost Center A1 - Buyer Scenarios', () => { const { organizationName: organizationB, quotes: organizationBQuote } = b2b.OrganizationB - loginToStoreFront(users.Buyer1, ROLE_DROP_DOWN.Buyer, gmailCreds) + loginToStoreFront(users.Buyer1, ROLE_DROP_DOWN.Buyer) verifySession(b2b.OrganizationA, costCenter1.name, ROLE_DROP_DOWN.Buyer) productShouldNotbeAvailableTestCase(nonAvailableProduct) userAndCostCenterShouldNotBeEditable({ @@ -50,7 +50,7 @@ describe('Organization A - Cost Center A1 - Buyer Scenarios', () => { userShouldNotImpersonateThisUser( ROLE_DROP_DOWN.Buyer, roleObject.SalesManager.role, - users.SalesManager + users.SalesManager.email ) quoteShouldbeVisibleTestCase( organizationName, diff --git a/cypress-shared/integration/b2b/2.5.2-buyer_scenarios_orgA_costA1.spec.js b/cypress-shared/integration/b2b/2.5.2-buyer_scenarios_orgA_costA1.spec.js index cc2579bc..4b05ea47 100644 --- a/cypress-shared/integration/b2b/2.5.2-buyer_scenarios_orgA_costA1.spec.js +++ b/cypress-shared/integration/b2b/2.5.2-buyer_scenarios_orgA_costA1.spec.js @@ -15,10 +15,9 @@ import { describe('Organization A - Cost Center A1 - Buyer Create Quote Scenarios', () => { loginViaCookies({ storeFrontCookie: false }) - const { costCenter1, users, product, product2, quotes, gmailCreds } = - b2b.OrganizationA + const { costCenter1, users, product, product2, quotes } = b2b.OrganizationA - loginToStoreFront(users.Buyer1, ROLE_DROP_DOWN.Buyer, gmailCreds) + loginToStoreFront(users.Buyer1, ROLE_DROP_DOWN.Buyer) verifySession(b2b.OrganizationA, costCenter1.name, ROLE_DROP_DOWN.Buyer) createQuote({ product, diff --git a/cypress-shared/integration/b2b/2.6.1-buyer_scenarios_orgA_costA2.spec.js b/cypress-shared/integration/b2b/2.6.1-buyer_scenarios_orgA_costA2.spec.js index 7be05707..30a63994 100644 --- a/cypress-shared/integration/b2b/2.6.1-buyer_scenarios_orgA_costA2.spec.js +++ b/cypress-shared/integration/b2b/2.6.1-buyer_scenarios_orgA_costA2.spec.js @@ -13,19 +13,13 @@ import { quoteShouldNotBeVisibleTestCase } from '../../support/b2b/quotes.js' describe('Organization A - Cost Center A2 - Buyer Scenarios', () => { loginViaCookies({ storeFrontCookie: false }) - const { - organizationName, - nonAvailableProduct, - users, - costCenter2, - quotes, - gmailCreds, - } = b2b.OrganizationA + const { organizationName, nonAvailableProduct, users, costCenter2, quotes } = + b2b.OrganizationA const { organizationName: organizationB, quotes: organizationBQuote } = b2b.OrganizationB - loginToStoreFront(users.Buyer2, ROLE_DROP_DOWN.Buyer, gmailCreds) + loginToStoreFront(users.Buyer2, ROLE_DROP_DOWN.Buyer) verifySession(b2b.OrganizationA, costCenter2.name, ROLE_DROP_DOWN.Buyer) productShouldNotbeAvailableTestCase(nonAvailableProduct) quoteShouldNotBeVisibleTestCase( diff --git a/cypress-shared/integration/b2b/2.6.2-buyer_scenarios_orgA_costA2.spec.js b/cypress-shared/integration/b2b/2.6.2-buyer_scenarios_orgA_costA2.spec.js index 2d5adee3..39bf4dac 100644 --- a/cypress-shared/integration/b2b/2.6.2-buyer_scenarios_orgA_costA2.spec.js +++ b/cypress-shared/integration/b2b/2.6.2-buyer_scenarios_orgA_costA2.spec.js @@ -14,9 +14,9 @@ import { describe('Organization A - Cost Center A2 - Buyer Scenarios', () => { loginViaCookies({ storeFrontCookie: false }) - const { users, costCenter2, quotes, product3, gmailCreds } = b2b.OrganizationA + const { users, costCenter2, quotes, product3 } = b2b.OrganizationA - loginToStoreFront(users.Buyer2, ROLE_DROP_DOWN.Buyer, gmailCreds) + loginToStoreFront(users.Buyer2, ROLE_DROP_DOWN.Buyer) verifySession(b2b.OrganizationA, costCenter2.name, ROLE_DROP_DOWN.Buyer) quickOrderByCategory(ROLE_DROP_DOWN.Buyer, quotes.Buyer2.quotes1, '$84.60') quickOrderByCategoryNegativeTestCase( diff --git a/cypress-shared/integration/b2b/2.7-buyer_scenarios_orgB_costB1.spec.js b/cypress-shared/integration/b2b/2.7-buyer_scenarios_orgB_costB1.spec.js index 3311a566..189abb74 100644 --- a/cypress-shared/integration/b2b/2.7-buyer_scenarios_orgB_costB1.spec.js +++ b/cypress-shared/integration/b2b/2.7-buyer_scenarios_orgB_costB1.spec.js @@ -25,13 +25,12 @@ describe('Organization B - Cost Center B1 - Buyer Scenario', () => { product, quotes, costCenter1, - gmailCreds, } = b2b.OrganizationB const { organizationName: organizationA, quotes: organizationAQuotes } = b2b.OrganizationA - loginToStoreFront(users.Buyer1, ROLE_DROP_DOWN.Buyer, gmailCreds) + loginToStoreFront(users.Buyer1, ROLE_DROP_DOWN.Buyer) verifySession(b2b.OrganizationB, costCenter1.name, ROLE_DROP_DOWN.Buyer) productShouldNotbeAvailableTestCase(nonAvailableProduct) quoteShouldbeVisibleTestCase( diff --git a/cypress-shared/integration/b2b/2.8.1-organization_admin_scenarios-orgA.spec.js b/cypress-shared/integration/b2b/2.8.1-organization_admin_scenarios-orgA.spec.js index 715ad945..361431b7 100644 --- a/cypress-shared/integration/b2b/2.8.1-organization_admin_scenarios-orgA.spec.js +++ b/cypress-shared/integration/b2b/2.8.1-organization_admin_scenarios-orgA.spec.js @@ -24,23 +24,13 @@ import { describe('Organization A - Cost Center A1 - Organization Admin2 Scenario', () => { loginViaCookies({ storeFrontCookie: false }) - const { - organizationName, - nonAvailableProduct, - costCenter2, - users, - quotes, - gmailCreds, - } = b2b.OrganizationA + const { organizationName, nonAvailableProduct, costCenter2, users, quotes } = + b2b.OrganizationA const { organizationName: organizationB, quotes: organizationBQuote } = b2b.OrganizationB - loginToStoreFront( - users.OrganizationAdmin2, - ROLE_DROP_DOWN.OrganizationAdmin, - gmailCreds - ) + loginToStoreFront(users.OrganizationAdmin2, ROLE_DROP_DOWN.OrganizationAdmin) verifySession( b2b.OrganizationA, costCenter2.name, @@ -50,12 +40,12 @@ describe('Organization A - Cost Center A1 - Organization Admin2 Scenario', () => userShouldNotImpersonateThisUser( ROLE_DROP_DOWN.OrganizationAdmin, roleObject.SalesManager.role, - users.SalesManager + users.SalesManager.email ) userShouldNotImpersonateThisUser( ROLE_DROP_DOWN.OrganizationAdmin, ROLE_DROP_DOWN.Buyer, - users.Buyer1 + users.Buyer1.email ) productShouldNotbeAvailableTestCase(nonAvailableProduct) quoteShouldbeVisibleTestCase( diff --git a/cypress-shared/integration/b2b/2.8.2-organization_admin_scenarios-orgA.spec.js b/cypress-shared/integration/b2b/2.8.2-organization_admin_scenarios-orgA.spec.js index 6b44d973..f6ddd221 100644 --- a/cypress-shared/integration/b2b/2.8.2-organization_admin_scenarios-orgA.spec.js +++ b/cypress-shared/integration/b2b/2.8.2-organization_admin_scenarios-orgA.spec.js @@ -26,13 +26,9 @@ import { describe('Organization A - Cost Center A1 - Organization Admin2 Scenario', () => { loginViaCookies({ storeFrontCookie: false }) - const { product, costCenter2, users, quotes, gmailCreds } = b2b.OrganizationA + const { product, costCenter2, users, quotes } = b2b.OrganizationA - loginToStoreFront( - users.OrganizationAdmin2, - ROLE_DROP_DOWN.OrganizationAdmin, - gmailCreds - ) + loginToStoreFront(users.OrganizationAdmin2, ROLE_DROP_DOWN.OrganizationAdmin) verifySession( b2b.OrganizationA, costCenter2.name, diff --git a/cypress-shared/integration/b2b/2.9-approver_scenarios_orgA.spec.js b/cypress-shared/integration/b2b/2.9-approver_scenarios_orgA.spec.js index 96a7c2ed..8273c85e 100644 --- a/cypress-shared/integration/b2b/2.9-approver_scenarios_orgA.spec.js +++ b/cypress-shared/integration/b2b/2.9-approver_scenarios_orgA.spec.js @@ -35,19 +35,13 @@ import { describe('Organization A - Cost Center A1 - Approver Scenario', () => { loginViaCookies({ storeFrontCookie: false }) - const { - organizationName, - nonAvailableProduct, - users, - costCenter1, - quotes, - gmailCreds, - } = b2b.OrganizationA + const { organizationName, nonAvailableProduct, users, costCenter1, quotes } = + b2b.OrganizationA const { organizationName: organizationB, quotes: organizationBquotes } = b2b.OrganizationB - loginToStoreFront(users.Approver1, ROLE_DROP_DOWN.Approver, gmailCreds) + loginToStoreFront(users.Approver1, ROLE_DROP_DOWN.Approver) verifySession(b2b.OrganizationA, costCenter1.name, ROLE_DROP_DOWN.Approver) productShouldNotbeAvailableTestCase(nonAvailableProduct) quoteShouldbeVisibleTestCase( diff --git a/cypress-shared/support/b2b/constants.js b/cypress-shared/support/b2b/constants.js index 34a863a6..a63061d7 100644 --- a/cypress-shared/support/b2b/constants.js +++ b/cypress-shared/support/b2b/constants.js @@ -206,68 +206,103 @@ export default { product3: PRODUCTS.tshirt, nonAvailableProduct: PRODUCTS.irobot, quotes: quotesListForOrganizationA(), - gmailCreds: ORG_A_GMAIL_CREDS, users: { - OrganizationAdmin1: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, - ORGANIZATION_A, - ROLE_DROP_DOWN_EMAIL_MAPPING.OrganizationAdmin1.suffixInEmail - ), - OrganizationAdmin2: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS4.email, - ORGANIZATION_A, - ROLE_DROP_DOWN_EMAIL_MAPPING.OrganizationAdmin2.suffixInEmail - ), - Buyer1: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, - ORGANIZATION_A, - ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer1.suffixInEmail - ), - Buyer2: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS3.email, - ORGANIZATION_A, - ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer2.suffixInEmail - ), - Buyer3: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, - ORGANIZATION_A, - ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer3.suffixInEmail - ), - Buyer4: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, - ORGANIZATION_A, - ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer4.suffixInEmail - ), - Approver1: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, - ORGANIZATION_A, - ROLE_DROP_DOWN_EMAIL_MAPPING.Approver1.suffixInEmail - ), - Approver2: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS3.email, - ORGANIZATION_A, - ROLE_DROP_DOWN_EMAIL_MAPPING.Approver2.suffixInEmail - ), - Approver3: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, - ORGANIZATION_A, - ROLE_DROP_DOWN_EMAIL_MAPPING.Approver3.suffixInEmail - ), - SalesRepresentative: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS.email, - ORGANIZATION_A, - ROLE_ID_EMAIL_MAPPING.SalesRepresentative.suffixInEmail - ), - SalesAdmin: generateEmailWithSuffix( - ORG_B_GMAIL_CREDS.email, - ORGANIZATION_A, - ROLE_ID_EMAIL_MAPPING.SalesAdmin.suffixInEmail - ), - SalesManager: generateEmailWithSuffix( - ORG_A_GMAIL_CREDS4.email, - ORGANIZATION_A, - ROLE_ID_EMAIL_MAPPING.SalesManager.suffixInEmail - ), + OrganizationAdmin1: { + gmailCreds: ORG_A_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_A_GMAIL_CREDS.email, + ORGANIZATION_A, + ROLE_DROP_DOWN_EMAIL_MAPPING.OrganizationAdmin1.suffixInEmail + ), + }, + OrganizationAdmin2: { + gmailCreds: ORG_A_GMAIL_CREDS4, + email: generateEmailWithSuffix( + ORG_A_GMAIL_CREDS4.email, + ORGANIZATION_A, + ROLE_DROP_DOWN_EMAIL_MAPPING.OrganizationAdmin2.suffixInEmail + ), + }, + Buyer1: { + gmailCreds: ORG_A_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_A_GMAIL_CREDS.email, + ORGANIZATION_A, + ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer1.suffixInEmail + ), + }, + Buyer2: { + gmailCreds: ORG_A_GMAIL_CREDS3, + email: generateEmailWithSuffix( + ORG_A_GMAIL_CREDS3.email, + ORGANIZATION_A, + ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer2.suffixInEmail + ), + }, + Buyer3: { + gmailCreds: ORG_A_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_A_GMAIL_CREDS.email, + ORGANIZATION_A, + ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer3.suffixInEmail + ), + }, + Buyer4: { + gmailCreds: ORG_A_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_A_GMAIL_CREDS.email, + ORGANIZATION_A, + ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer4.suffixInEmail + ), + }, + Approver1: { + gmailCreds: ORG_A_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_A_GMAIL_CREDS.email, + ORGANIZATION_A, + ROLE_DROP_DOWN_EMAIL_MAPPING.Approver1.suffixInEmail + ), + }, + Approver2: { + gmailCreds: ORG_A_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_A_GMAIL_CREDS3.email, + ORGANIZATION_A, + ROLE_DROP_DOWN_EMAIL_MAPPING.Approver2.suffixInEmail + ), + }, + Approver3: { + gmailCreds: ORG_A_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_A_GMAIL_CREDS.email, + ORGANIZATION_A, + ROLE_DROP_DOWN_EMAIL_MAPPING.Approver3.suffixInEmail + ), + }, + SalesRepresentative: { + gmailCreds: ORG_A_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_A_GMAIL_CREDS.email, + ORGANIZATION_A, + ROLE_ID_EMAIL_MAPPING.SalesRepresentative.suffixInEmail + ), + }, + SalesAdmin: { + gmailCreds: ORG_B_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_B_GMAIL_CREDS.email, + ORGANIZATION_A, + ROLE_ID_EMAIL_MAPPING.SalesAdmin.suffixInEmail + ), + }, + SalesManager: { + gmailCreds: ORG_B_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_A_GMAIL_CREDS4.email, + ORGANIZATION_A, + ROLE_ID_EMAIL_MAPPING.SalesManager.suffixInEmail + ), + }, }, }, OrganizationB: { @@ -296,24 +331,32 @@ export default { product: PRODUCTS.irobot, nonAvailableProduct: PRODUCTS.tshirt, quotes: quotesListForOrganizationB(), - gmailCreds: ORG_B_GMAIL_CREDS, users: { - OrganizationAdmin1: generateEmailWithSuffix( - ORG_B_GMAIL_CREDS.email, - ORGANIZATION_B, - ROLE_DROP_DOWN_EMAIL_MAPPING.OrganizationAdmin1.suffixInEmail - ), + OrganizationAdmin1: { + gmailCreds: ORG_B_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_B_GMAIL_CREDS.email, + ORGANIZATION_B, + ROLE_DROP_DOWN_EMAIL_MAPPING.OrganizationAdmin1.suffixInEmail + ), + }, - Buyer1: generateEmailWithSuffix( - ORG_B_GMAIL_CREDS.email, - ORGANIZATION_B, - ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer1.suffixInEmail - ), - Approver1: generateEmailWithSuffix( - ORG_B_GMAIL_CREDS.email, - ORGANIZATION_B, - ROLE_DROP_DOWN_EMAIL_MAPPING.Approver1.suffixInEmail - ), + Buyer1: { + gmailCreds: ORG_B_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_B_GMAIL_CREDS.email, + ORGANIZATION_B, + ROLE_DROP_DOWN_EMAIL_MAPPING.Buyer1.suffixInEmail + ), + }, + Approver1: { + gmailCreds: ORG_B_GMAIL_CREDS, + email: generateEmailWithSuffix( + ORG_B_GMAIL_CREDS.email, + ORGANIZATION_B, + ROLE_DROP_DOWN_EMAIL_MAPPING.Approver1.suffixInEmail + ), + }, }, }, } diff --git a/cypress-shared/support/b2b/login.js b/cypress-shared/support/b2b/login.js index f3d5d9a9..1fa012ab 100644 --- a/cypress-shared/support/b2b/login.js +++ b/cypress-shared/support/b2b/login.js @@ -41,7 +41,7 @@ export function storeUserCookie(email) { }) } -export function loginToStoreFront(email, role, gmailCreds) { +export function loginToStoreFront({ email, gmailCreds }, role) { it( `Logging in to storefront with ${email} as ${role}`, { defaultCommandTimeout: 80000, retries: 1 }, From 1cfe55a9385c7f9e4e32233f6d301ec27274eddc Mon Sep 17 00:00:00 2001 From: Syed-Vtex Date: Thu, 13 Apr 2023 17:48:24 +0530 Subject: [PATCH 6/8] Fix 2.4.1 --- cypress-shared/support/b2b/add_users.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cypress-shared/support/b2b/add_users.js b/cypress-shared/support/b2b/add_users.js index e3cfa2b6..19b9a9ba 100644 --- a/cypress-shared/support/b2b/add_users.js +++ b/cypress-shared/support/b2b/add_users.js @@ -259,7 +259,7 @@ export function addUserViaGraphql(users, roleKey) { orgId: organizationItems[organizationName], costId: organizationItems[costCenter1.name], name: generateName(role), - email: users[roleKey], + email: users[roleKey].email, } expect(variables.roleId).to.not.be.undefined From f8508838ba21aeaa1eb86a70d637a6e4eba80c8e Mon Sep 17 00:00:00 2001 From: Syed-Vtex Date: Thu, 13 Apr 2023 20:18:01 +0530 Subject: [PATCH 7/8] Fix 2.3,2.5.1 --- .../2.3-add_buyer_approver_organizationB.spec.js | 4 ++-- .../b2b/2.5.1-buyer_scenarios_orgA_costA1.spec.js | 3 +-- cypress-shared/support/b2b/add_users.js | 9 ++------- cypress-shared/support/b2b/common.js | 14 +++----------- 4 files changed, 8 insertions(+), 22 deletions(-) diff --git a/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js b/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js index 964550ef..501f2772 100644 --- a/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js +++ b/cypress-shared/integration/b2b/2.3-add_buyer_approver_organizationB.spec.js @@ -18,7 +18,7 @@ import { createQuote } from '../../support/b2b/quotes.js' describe('OrganizationB - Create a Buyer and Approver associate Cost Center and assign payment terms', () => { loginViaCookies({ storeFrontCookie: false }) - const { organizationName, costCenter1, users, product, quotes, gmailCreds } = + const { organizationName, costCenter1, users, product, quotes } = b2b.OrganizationB loginToStoreFront(users.OrganizationAdmin1, ROLE_DROP_DOWN.OrganizationAdmin) @@ -40,7 +40,7 @@ describe('OrganizationB - Create a Buyer and Approver associate Cost Center and organizationName, costCenter: costCenter1.name, role: role.Approver1, - gmailCreds, + email: users.Approver1.email, }) createQuote({ product, diff --git a/cypress-shared/integration/b2b/2.5.1-buyer_scenarios_orgA_costA1.spec.js b/cypress-shared/integration/b2b/2.5.1-buyer_scenarios_orgA_costA1.spec.js index 2b9b4f57..29135f4c 100644 --- a/cypress-shared/integration/b2b/2.5.1-buyer_scenarios_orgA_costA1.spec.js +++ b/cypress-shared/integration/b2b/2.5.1-buyer_scenarios_orgA_costA1.spec.js @@ -32,7 +32,6 @@ describe('Organization A - Cost Center A1 - Buyer Scenarios', () => { users, product, quotes, - gmailCreds, } = b2b.OrganizationA const { organizationName: organizationB, quotes: organizationBQuote } = @@ -44,7 +43,7 @@ describe('Organization A - Cost Center A1 - Buyer Scenarios', () => { userAndCostCenterShouldNotBeEditable({ organizationName, costCenter: costCenter1.name, - gmailCreds, + email: users.Buyer1.email, role: role.Buyer1, }) userShouldNotImpersonateThisUser( diff --git a/cypress-shared/support/b2b/add_users.js b/cypress-shared/support/b2b/add_users.js index 19b9a9ba..95b43023 100644 --- a/cypress-shared/support/b2b/add_users.js +++ b/cypress-shared/support/b2b/add_users.js @@ -61,17 +61,12 @@ export function duplicateUserTestCase({ organizationName, costCenter, role, - gmailCreds, + email, }) { const { suffixInEmail, dropDownText } = role - const email = generateEmailWithSuffix( - gmailCreds.email, - organizationName, - suffixInEmail - ) it( - `Add duplicate user ${email} from same organization and verify popup`, + `Add duplicate user ${email} from same organization ${organizationName} and verify popup`, updateRetry(3), () => { const userName = generateName(suffixInEmail) diff --git a/cypress-shared/support/b2b/common.js b/cypress-shared/support/b2b/common.js index ec136cb6..99a1ff6b 100644 --- a/cypress-shared/support/b2b/common.js +++ b/cypress-shared/support/b2b/common.js @@ -1,5 +1,5 @@ import selectors from '../common/selectors.js' -import { generateEmailWithSuffix, validateToastMsg } from './utils.js' +import { validateToastMsg } from './utils.js' import { BUTTON_LABEL, TOAST_MSG } from '../validation_text.js' import { GRAPHL_OPERATIONS } from '../graphql_operations.js' import { updateRetry } from '../common/support.js' @@ -168,27 +168,19 @@ export function userAndCostCenterShouldNotBeEditable({ organizationName, costCenter, role, - gmailCreds, + email, }) { it( `Trying to update user and cost center in ${organizationName} with role ${role.dropDownText}`, updateRetry(1), () => { - const { suffixInEmail } = role - cy.gotoMyOrganization() cy.get(selectors.AddUser).should('be.visible') cy.get( '.vtex-table__container .ReactVirtualized__Grid__innerScrollContainer' ) .last() - .contains( - generateEmailWithSuffix( - gmailCreds.email, - organizationName, - suffixInEmail - ) - ) + .contains(email) .should('have.class', 'c-disabled') cy.get(selectors.AddUser).should('be.visible').should('be.disabled') cy.get(selectors.AddCostCenter).should('be.visible').should('be.disabled') From ca43301edff3c43549140843dadcf41e03760806 Mon Sep 17 00:00:00 2001 From: Syed-Vtex Date: Fri, 14 Apr 2023 17:37:35 +0530 Subject: [PATCH 8/8] Fix 2.13.1 and remove .hen from login.js --- .../integration/b2b/2.13.1-sales_manager_scenarios.spec.js | 2 +- cypress-shared/support/b2b/login.js | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/cypress-shared/integration/b2b/2.13.1-sales_manager_scenarios.spec.js b/cypress-shared/integration/b2b/2.13.1-sales_manager_scenarios.spec.js index 6aaeb11c..36ad3b63 100644 --- a/cypress-shared/integration/b2b/2.13.1-sales_manager_scenarios.spec.js +++ b/cypress-shared/integration/b2b/2.13.1-sales_manager_scenarios.spec.js @@ -33,7 +33,7 @@ describe('Organization A - Cost Center A1 - Sales Manager Basic Scenario', () => userShouldNotImpersonateThisUser( roleObject.SalesManager.role, roleObject.SalesRepresentative.role, - users.SalesRep.email + users.SalesRepresentative.email ) productShouldNotbeAvailableTestCase(nonAvailableProduct) salesManagerQuotesAccess(b2b.OrganizationA, organizationB, organizationBQuote) diff --git a/cypress-shared/support/b2b/login.js b/cypress-shared/support/b2b/login.js index 1fa012ab..0ba464c5 100644 --- a/cypress-shared/support/b2b/login.js +++ b/cypress-shared/support/b2b/login.js @@ -108,7 +108,6 @@ export function loginToStoreFront({ email, gmailCreds }, role) { cy.qe(`Type ${newAccessToken} in token field`) cy.get(selectors.Token).clear().type(newAccessToken) - cy.get(selectors.Token).then cy.qe(`Click Submit Btn`) cy.get(selectors.Submit).click() cy.waitForSession()