From dc4948e45bfc3e637ce53c682959688afbdfd512 Mon Sep 17 00:00:00 2001 From: Daniel Heras Quesada Date: Tue, 16 Sep 2025 13:27:53 +0200 Subject: [PATCH] test: e2e cypress testing replaced by playwright --- e2e-testing-cypress/.gitignore | 1 - e2e-testing-cypress/cypress.config.js | 9 - .../cypress/e2e/1-getting-started/todo.cy.js | 143 -- .../e2e/2-advanced-examples/actions.cy.js | 321 --- .../e2e/2-advanced-examples/aliasing.cy.js | 39 - .../e2e/2-advanced-examples/assertions.cy.js | 176 -- .../e2e/2-advanced-examples/connectors.cy.js | 98 - .../e2e/2-advanced-examples/cookies.cy.js | 118 - .../e2e/2-advanced-examples/cypress_api.cy.js | 184 -- .../e2e/2-advanced-examples/files.cy.js | 85 - .../e2e/2-advanced-examples/location.cy.js | 32 - .../e2e/2-advanced-examples/misc.cy.js | 98 - .../e2e/2-advanced-examples/navigation.cy.js | 55 - .../network_requests.cy.js | 163 -- .../e2e/2-advanced-examples/querying.cy.js | 114 - .../spies_stubs_clocks.cy.js | 204 -- .../e2e/2-advanced-examples/storage.cy.js | 117 - .../e2e/2-advanced-examples/traversal.cy.js | 121 - .../e2e/2-advanced-examples/utilities.cy.js | 107 - .../e2e/2-advanced-examples/viewport.cy.js | 58 - .../e2e/2-advanced-examples/waiting.cy.js | 30 - .../e2e/2-advanced-examples/window.cy.js | 22 - .../cypress/fixtures/example.json | 5 - .../cypress/support/commands.js | 25 - e2e-testing-cypress/cypress/support/e2e.js | 17 - e2e-testing-cypress/package-lock.json | 2055 ----------------- e2e-testing-cypress/package.json | 14 - .../.github/workflows/playwright.yml | 27 + e2e-testing-playwright/.gitignore | 7 + e2e-testing-playwright/package-lock.json | 97 + e2e-testing-playwright/package.json | 18 + e2e-testing-playwright/playwright.config.ts | 80 + e2e-testing-playwright/tests/login.spec.ts | 31 + .../auth/components/log-in/log-in.widget.tsx | 1 + front/tsconfig.json | 70 +- 35 files changed, 302 insertions(+), 4440 deletions(-) delete mode 100644 e2e-testing-cypress/.gitignore delete mode 100644 e2e-testing-cypress/cypress.config.js delete mode 100644 e2e-testing-cypress/cypress/e2e/1-getting-started/todo.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/actions.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/aliasing.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/assertions.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/connectors.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/cookies.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/cypress_api.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/files.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/location.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/misc.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/navigation.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/network_requests.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/querying.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/spies_stubs_clocks.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/storage.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/traversal.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/utilities.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/viewport.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/waiting.cy.js delete mode 100644 e2e-testing-cypress/cypress/e2e/2-advanced-examples/window.cy.js delete mode 100644 e2e-testing-cypress/cypress/fixtures/example.json delete mode 100644 e2e-testing-cypress/cypress/support/commands.js delete mode 100644 e2e-testing-cypress/cypress/support/e2e.js delete mode 100644 e2e-testing-cypress/package-lock.json delete mode 100644 e2e-testing-cypress/package.json create mode 100644 e2e-testing-playwright/.github/workflows/playwright.yml create mode 100644 e2e-testing-playwright/.gitignore create mode 100644 e2e-testing-playwright/package-lock.json create mode 100644 e2e-testing-playwright/package.json create mode 100644 e2e-testing-playwright/playwright.config.ts create mode 100644 e2e-testing-playwright/tests/login.spec.ts diff --git a/e2e-testing-cypress/.gitignore b/e2e-testing-cypress/.gitignore deleted file mode 100644 index 3c3629e..0000000 --- a/e2e-testing-cypress/.gitignore +++ /dev/null @@ -1 +0,0 @@ -node_modules diff --git a/e2e-testing-cypress/cypress.config.js b/e2e-testing-cypress/cypress.config.js deleted file mode 100644 index 97f47c4..0000000 --- a/e2e-testing-cypress/cypress.config.js +++ /dev/null @@ -1,9 +0,0 @@ -const { defineConfig } = require("cypress"); - -module.exports = defineConfig({ - e2e: { - setupNodeEvents(on, config) { - // implement node event listeners here - }, - }, -}); diff --git a/e2e-testing-cypress/cypress/e2e/1-getting-started/todo.cy.js b/e2e-testing-cypress/cypress/e2e/1-getting-started/todo.cy.js deleted file mode 100644 index 4768ff9..0000000 --- a/e2e-testing-cypress/cypress/e2e/1-getting-started/todo.cy.js +++ /dev/null @@ -1,143 +0,0 @@ -/// - -// Welcome to Cypress! -// -// This spec file contains a variety of sample tests -// for a todo list app that are designed to demonstrate -// the power of writing tests in Cypress. -// -// To learn more about how Cypress works and -// what makes it such an awesome testing tool, -// please read our getting started guide: -// https://on.cypress.io/introduction-to-cypress - -describe('example to-do app', () => { - beforeEach(() => { - // Cypress starts out with a blank slate for each test - // so we must tell it to visit our website with the `cy.visit()` command. - // Since we want to visit the same URL at the start of all our tests, - // we include it in our beforeEach function so that it runs before each test - cy.visit('https://example.cypress.io/todo') - }) - - it('displays two todo items by default', () => { - // We use the `cy.get()` command to get all elements that match the selector. - // Then, we use `should` to assert that there are two matched items, - // which are the two default items. - cy.get('.todo-list li').should('have.length', 2) - - // We can go even further and check that the default todos each contain - // the correct text. We use the `first` and `last` functions - // to get just the first and last matched elements individually, - // and then perform an assertion with `should`. - cy.get('.todo-list li').first().should('have.text', 'Pay electric bill') - cy.get('.todo-list li').last().should('have.text', 'Walk the dog') - }) - - it('can add new todo items', () => { - // We'll store our item text in a variable so we can reuse it - const newItem = 'Feed the cat' - - // Let's get the input element and use the `type` command to - // input our new list item. After typing the content of our item, - // we need to type the enter key as well in order to submit the input. - // This input has a data-test attribute so we'll use that to select the - // element in accordance with best practices: - // https://on.cypress.io/selecting-elements - cy.get('[data-test=new-todo]').type(`${newItem}{enter}`) - - // Now that we've typed our new item, let's check that it actually was added to the list. - // Since it's the newest item, it should exist as the last element in the list. - // In addition, with the two default items, we should have a total of 3 elements in the list. - // Since assertions yield the element that was asserted on, - // we can chain both of these assertions together into a single statement. - cy.get('.todo-list li') - .should('have.length', 3) - .last() - .should('have.text', newItem) - }) - - it('can check off an item as completed', () => { - // In addition to using the `get` command to get an element by selector, - // we can also use the `contains` command to get an element by its contents. - // However, this will yield the