From 8db179c5174d114a369a036b446c3c348a398f09 Mon Sep 17 00:00:00 2001 From: mahula Date: Wed, 28 Jun 2023 09:48:11 +0200 Subject: [PATCH] lint e2e stepdefinition files files --- .../support/step_definitions/common_steps.ts | 9 +- .../support/step_definitions/email_steps.ts | 81 +++++++++--------- .../step_definitions/send_coin_steps.ts | 82 ++++++++++++------- .../user_authentication_steps.ts | 32 +++----- .../user_profile_change_password_steps.ts | 2 +- .../user_registration_steps.ts | 2 +- 6 files changed, 111 insertions(+), 97 deletions(-) diff --git a/e2e-tests/cypress/support/step_definitions/common_steps.ts b/e2e-tests/cypress/support/step_definitions/common_steps.ts index c5d3004ac..656ffb54f 100644 --- a/e2e-tests/cypress/support/step_definitions/common_steps.ts +++ b/e2e-tests/cypress/support/step_definitions/common_steps.ts @@ -9,12 +9,9 @@ Given('the user navigates to page {string}', (page: string) => { // login related -Given( - 'the user is logged in as {string} {string}', - (email: string, password: string) => { - cy.login(email, password) - } -) +Given('the user is logged in as {string} {string}', (email: string, password: string) => { + cy.login(email, password) +}) Then('the user is logged in with username {string}', (username: string) => { const overviewPage = new OverviewPage() diff --git a/e2e-tests/cypress/support/step_definitions/email_steps.ts b/e2e-tests/cypress/support/step_definitions/email_steps.ts index 31141e574..c6ef5e376 100644 --- a/e2e-tests/cypress/support/step_definitions/email_steps.ts +++ b/e2e-tests/cypress/support/step_definitions/email_steps.ts @@ -23,13 +23,15 @@ Then('the user receives an e-mail containing the {string} link', (linkName: stri linkPattern = /\/overview/ break default: - throw new Error(`Error in "Then the user receives an e-mail containing the {string} link" step: incorrect linkname string "${linkName}"`) + throw new Error( + `Error in "Then the user receives an e-mail containing the {string} link" step: incorrect linkname string "${linkName}"`, + ) } - + cy.origin( Cypress.env('mailserverURL'), { args: { emailSubject, linkPattern, userEMailSite } }, - ({ emailSubject, linkPattern, userEMailSite }) => { + ({ emailSubject, linkPattern, userEMailSite }) => { cy.visit('/') // navigate to user's e-mail site (on fake mail server) cy.get(userEMailSite.emailInbox).should('be.visible') @@ -39,11 +41,9 @@ Then('the user receives an e-mail containing the {string} link', (linkName: stri .first() .click() - cy.get(userEMailSite.emailMeta) - .find(userEMailSite.emailSubject) - .contains(emailSubject) + cy.get(userEMailSite.emailMeta).find(userEMailSite.emailSubject).contains(emailSubject) - cy.get('.email-content', { timeout: 2000}) + cy.get('.email-content', { timeout: 2000 }) .find('.plain-text') .contains(linkPattern) .invoke('text') @@ -51,41 +51,42 @@ Then('the user receives an e-mail containing the {string} link', (linkName: stri const emailLink = text.match(linkPattern)[0] cy.task('setEmailLink', emailLink) }) - } + }, ) }) -And('the user receives the transaction e-mail about {string} GDD from {string}', (amount: string, senderName:string) => { - cy.origin( - Cypress.env('mailserverURL'), - { args: { amount, senderName, userEMailSite } }, - ({ amount, senderName, userEMailSite }) => { - const subject = `${senderName} hat dir ${amount} Gradido gesendet` - const linkPattern = /\/transactions/ - cy.visit('/') - cy.get(userEMailSite.emailInbox).should('be.visible') +And( + 'the user receives the transaction e-mail about {string} GDD from {string}', + (amount: string, senderName: string) => { + cy.origin( + Cypress.env('mailserverURL'), + { args: { amount, senderName, userEMailSite } }, + ({ amount, senderName, userEMailSite }) => { + const subject = `${senderName} hat dir ${amount} Gradido gesendet` + const linkPattern = /\/transactions/ + cy.visit('/') + cy.get(userEMailSite.emailInbox).should('be.visible') - cy.get(userEMailSite.emailList) - .find('.email-item') - .filter(`:contains(${subject})`) - .first() - .click() - - cy.get(userEMailSite.emailMeta) - .find(userEMailSite.emailSubject) - .contains(subject) - - cy.get('.email-content', { timeout: 2000}) - .find('.plain-text') - .contains(linkPattern) - .invoke('text') - .then((text) => { - const emailLink = text.match(linkPattern)[0] - cy.task('setEmailLink', emailLink) - }) - } - ) -}) + cy.get(userEMailSite.emailList) + .find('.email-item') + .filter(`:contains(${subject})`) + .first() + .click() + + cy.get(userEMailSite.emailMeta).find(userEMailSite.emailSubject).contains(subject) + + cy.get('.email-content', { timeout: 2000 }) + .find('.plain-text') + .contains(linkPattern) + .invoke('text') + .then((text) => { + const emailLink = text.match(linkPattern)[0] + cy.task('setEmailLink', emailLink) + }) + }, + ) + }, +) When('the user opens the {string} link in the browser', (linkName: string) => { const resetPasswordPage = new ResetPasswordPage() @@ -105,6 +106,8 @@ When('the user opens the {string} link in the browser', (linkName: string) => { cy.get(overviewPage.rightLastTransactionsList).should('be.visible') break default: - throw new Error(`Error in "Then the user receives an e-mail containing the {string} link" step: incorrect link name string "${linkName}"`) + throw new Error( + `Error in "Then the user receives an e-mail containing the {string} link" step: incorrect link name string "${linkName}"`, + ) } }) diff --git a/e2e-tests/cypress/support/step_definitions/send_coin_steps.ts b/e2e-tests/cypress/support/step_definitions/send_coin_steps.ts index ba9eab4b4..707b8a147 100644 --- a/e2e-tests/cypress/support/step_definitions/send_coin_steps.ts +++ b/e2e-tests/cypress/support/step_definitions/send_coin_steps.ts @@ -9,7 +9,7 @@ When( sendPage.enterReceiverEmail(email) sendPage.enterAmount(amount) sendPage.enterMemoText(memoText) - } + }, ) And('the user submits the send form', () => { @@ -17,15 +17,23 @@ And('the user submits the send form', () => { cy.get(sendPage.confirmationBox).should('be.visible') }) - -Then('the transaction details are presented for confirmation {string} {string} {string} {string} {string}', (receiverEmail: string, sendAmount: string, memoText: string, senderBalance: string, newSenderBalance: string) => { - cy.get('.transaction-confirm-send').contains(receiverEmail) - cy.get('.transaction-confirm-send').contains(`+ ${sendAmount} GDD`) - cy.get('.transaction-confirm-send').contains(memoText) - cy.get('.transaction-confirm-send').contains(`+ ${senderBalance} GDD`) - cy.get('.transaction-confirm-send').contains(`− ${sendAmount} GDD`) - cy.get('.transaction-confirm-send').contains(`+ ${newSenderBalance} GDD`) -}) +Then( + 'the transaction details are presented for confirmation {string} {string} {string} {string} {string}', + ( + receiverEmail: string, + sendAmount: string, + memoText: string, + senderBalance: string, + newSenderBalance: string, + ) => { + cy.get('.transaction-confirm-send').contains(receiverEmail) + cy.get('.transaction-confirm-send').contains(`+ ${sendAmount} GDD`) + cy.get('.transaction-confirm-send').contains(memoText) + cy.get('.transaction-confirm-send').contains(`+ ${senderBalance} GDD`) + cy.get('.transaction-confirm-send').contains(`− ${sendAmount} GDD`) + cy.get('.transaction-confirm-send').contains(`+ ${newSenderBalance} GDD`) + }, +) When('the user submits the transaction by confirming', (receiverName: string, amount) => { cy.intercept({ @@ -38,11 +46,14 @@ When('the user submits the transaction by confirming', (receiverName: string, am cy.wait('@sendCoins').then((interception) => { cy.wrap(interception.response?.statusCode).should('eq', 200) - cy.wrap(interception.request.body) - .should('have.property', 'query', `mutation ($identifier: String!, $amount: Decimal!, $memo: String!) { + cy.wrap(interception.request.body).should( + 'have.property', + 'query', + `mutation ($identifier: String!, $amount: Decimal!, $memo: String!) { sendCoins(identifier: $identifier, amount: $amount, memo: $memo) } -` ) +`, + ) cy.wrap(interception.response?.body) .should('have.nested.property', 'data.sendCoins') .and('equal', true) @@ -50,21 +61,30 @@ When('the user submits the transaction by confirming', (receiverName: string, am cy.get('[data-test="send-transaction-success-text"]').should('be.visible') }) -Then('the {string} and {string} are displayed on the {string} page', (name: string, amount: string, page: string) => { - switch (page) { - case 'overview': - cy.get('.align-items-center').contains(`${name}`) - cy.get('.align-items-center').contains(`${amount} GDD`) - break - case 'send': - cy.get('.align-items-center').contains(`${name}`) - cy.get('.align-items-center').contains(`${amount} GDD`) - break - case 'transactions': - cy.get('div.mt-3 > div > div.test-list-group-item').eq(0).contains('div.gdd-transaction-list-item-name', `${name}`) - cy.get('div.mt-3 > div > div.test-list-group-item').eq(0).contains('[data-test="transaction-amount"]', `${amount} GDD`) - break - default: - throw new Error(`Error in "Then the {string} and {string} are displayed on the {string}} page" step: incorrect page name string "${page}"`) - } -}) \ No newline at end of file +Then( + 'the {string} and {string} are displayed on the {string} page', + (name: string, amount: string, page: string) => { + switch (page) { + case 'overview': + cy.get('.align-items-center').contains(`${name}`) + cy.get('.align-items-center').contains(`${amount} GDD`) + break + case 'send': + cy.get('.align-items-center').contains(`${name}`) + cy.get('.align-items-center').contains(`${amount} GDD`) + break + case 'transactions': + cy.get('div.mt-3 > div > div.test-list-group-item') + .eq(0) + .contains('div.gdd-transaction-list-item-name', `${name}`) + cy.get('div.mt-3 > div > div.test-list-group-item') + .eq(0) + .contains('[data-test="transaction-amount"]', `${amount} GDD`) + break + default: + throw new Error( + `Error in "Then the {string} and {string} are displayed on the {string}} page" step: incorrect page name string "${page}"`, + ) + } + }, +) diff --git a/e2e-tests/cypress/support/step_definitions/user_authentication_steps.ts b/e2e-tests/cypress/support/step_definitions/user_authentication_steps.ts index 5b25f5391..fb8cf400e 100644 --- a/e2e-tests/cypress/support/step_definitions/user_authentication_steps.ts +++ b/e2e-tests/cypress/support/step_definitions/user_authentication_steps.ts @@ -13,26 +13,20 @@ When('the user submits no credentials', () => { loginPage.submitLogin() }) -When( - 'the user submits the credentials {string} {string}', - (email: string, password: string) => { - cy.intercept('POST', '/graphql', (req) => { - if ( - req.body.hasOwnProperty('query') && - req.body.query.includes('mutation') - ) { - req.alias = 'login' - } - }) +When('the user submits the credentials {string} {string}', (email: string, password: string) => { + cy.intercept('POST', '/graphql', (req) => { + if (req.body.hasOwnProperty('query') && req.body.query.includes('mutation')) { + req.alias = 'login' + } + }) - loginPage.enterEmail(email) - loginPage.enterPassword(password) - loginPage.submitLogin() - cy.wait('@login').then((interception) => { - expect(interception.response.statusCode).equals(200) - }) - } -) + loginPage.enterEmail(email) + loginPage.enterPassword(password) + loginPage.submitLogin() + cy.wait('@login').then((interception) => { + expect(interception.response.statusCode).equals(200) + }) +}) // password reset related diff --git a/e2e-tests/cypress/support/step_definitions/user_profile_change_password_steps.ts b/e2e-tests/cypress/support/step_definitions/user_profile_change_password_steps.ts index 1dcbe69ef..8cc45d5b0 100644 --- a/e2e-tests/cypress/support/step_definitions/user_profile_change_password_steps.ts +++ b/e2e-tests/cypress/support/step_definitions/user_profile_change_password_steps.ts @@ -11,7 +11,7 @@ And('the user opens the change password menu', () => { }) When('the user fills the password form with:', (table) => { - let hashedTableRows = table.rowsHash() + const hashedTableRows = table.rowsHash() profilePage.enterOldPassword(hashedTableRows['Old password']) profilePage.enterNewPassword(hashedTableRows['New password']) profilePage.enterRepeatPassword(hashedTableRows['Repeat new password']) diff --git a/e2e-tests/cypress/support/step_definitions/user_registration_steps.ts b/e2e-tests/cypress/support/step_definitions/user_registration_steps.ts index e90956b6e..df4972077 100644 --- a/e2e-tests/cypress/support/step_definitions/user_registration_steps.ts +++ b/e2e-tests/cypress/support/step_definitions/user_registration_steps.ts @@ -10,7 +10,7 @@ When( registrationPage.enterFirstname(firstname) registrationPage.enterLastname(lastname) registrationPage.enterEmail(email) - } + }, ) And('the user agrees to the privacy policy', () => {