From 85f1d5cae217b7228d1a4af64bb2f27e3782b379 Mon Sep 17 00:00:00 2001 From: Dave Richer Date: Mon, 24 Mar 2025 11:04:07 -0400 Subject: [PATCH] IO-3181-Testing-Framework-Selection: Remove Cypress, upgrade Split --- client/cypress.config.js | 17 -- .../e2e/01-General Render/01-home.cy.js | 19 -- .../cypress/e2e/1-getting-started/todo.cy.js | 124 -------- .../e2e/2-advanced-examples/actions.cy.js | 284 ------------------ .../e2e/2-advanced-examples/aliasing.cy.js | 35 --- .../e2e/2-advanced-examples/assertions.cy.js | 173 ----------- .../e2e/2-advanced-examples/connectors.cy.js | 96 ------ .../e2e/2-advanced-examples/cookies.cy.js | 79 ----- .../e2e/2-advanced-examples/cypress_api.cy.js | 208 ------------- .../e2e/2-advanced-examples/files.cy.js | 86 ------ .../2-advanced-examples/local_storage.cy.js | 58 ---- .../e2e/2-advanced-examples/location.cy.js | 32 -- .../e2e/2-advanced-examples/misc.cy.js | 98 ------ .../e2e/2-advanced-examples/navigation.cy.js | 56 ---- .../network_requests.cy.js | 165 ---------- .../e2e/2-advanced-examples/querying.cy.js | 100 ------ .../spies_stubs_clocks.cy.js | 203 ------------- .../e2e/2-advanced-examples/traversal.cy.js | 97 ------ .../e2e/2-advanced-examples/utilities.cy.js | 108 ------- .../e2e/2-advanced-examples/viewport.cy.js | 59 ---- .../e2e/2-advanced-examples/waiting.cy.js | 31 -- .../e2e/2-advanced-examples/window.cy.js | 22 -- client/cypress/fixtures/example.json | 5 - client/cypress/fixtures/profile.json | 5 - client/cypress/fixtures/users.json | 1 - client/cypress/plugins/index.js | 22 -- client/cypress/support/commands.js | 27 -- client/cypress/support/e2e.js | 20 -- client/cypress/tsconfig.json | 8 - client/package-lock.json | 169 +++++------ client/package.json | 6 +- client/src/App/App.container.jsx | 32 +- client/src/redux/user/user.actions.js | 5 + client/src/redux/user/user.reducer.js | 5 + client/src/redux/user/user.sagas.js | 5 +- client/src/redux/user/user.types.js | 3 +- 36 files changed, 127 insertions(+), 2336 deletions(-) delete mode 100644 client/cypress.config.js delete mode 100644 client/cypress/e2e/01-General Render/01-home.cy.js delete mode 100644 client/cypress/e2e/1-getting-started/todo.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/actions.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/aliasing.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/assertions.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/connectors.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/cookies.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/cypress_api.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/files.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/local_storage.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/location.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/misc.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/navigation.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/network_requests.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/querying.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/spies_stubs_clocks.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/traversal.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/utilities.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/viewport.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/waiting.cy.js delete mode 100644 client/cypress/e2e/2-advanced-examples/window.cy.js delete mode 100644 client/cypress/fixtures/example.json delete mode 100644 client/cypress/fixtures/profile.json delete mode 100644 client/cypress/fixtures/users.json delete mode 100644 client/cypress/plugins/index.js delete mode 100644 client/cypress/support/commands.js delete mode 100644 client/cypress/support/e2e.js delete mode 100644 client/cypress/tsconfig.json diff --git a/client/cypress.config.js b/client/cypress.config.js deleted file mode 100644 index b000b5aac..000000000 --- a/client/cypress.config.js +++ /dev/null @@ -1,17 +0,0 @@ -const { defineConfig } = require("cypress"); - -module.exports = defineConfig({ - experimentalStudio: true, - env: { - FIREBASE_USERNAME: "cypress@imex.test", - FIREBASE_PASSWORD: "cypress" - }, - e2e: { - // We've imported your old cypress plugins here. - // You may want to clean this up later by importing these. - setupNodeEvents(on, config) { - return require("./cypress/plugins/index.js")(on, config); - }, - baseUrl: "https://localhost:3000" - } -}); diff --git a/client/cypress/e2e/01-General Render/01-home.cy.js b/client/cypress/e2e/01-General Render/01-home.cy.js deleted file mode 100644 index 44202154f..000000000 --- a/client/cypress/e2e/01-General Render/01-home.cy.js +++ /dev/null @@ -1,19 +0,0 @@ -/// -const { FIREBASE_USERNAME, FIREBASE_PASSWORcD } = Cypress.env(); -describe("Renders the General Page", () => { - beforeEach(() => { - cy.visit("/"); - }); - it("Renders Correctly", () => {}); - it("Has the Slogan", () => { - cy.findByText("A whole x22new kind of shop management system.").should("exist"); - /* ==== Generated with Cypress Studio ==== */ - cy.get(".ant-menu-item-active > .ant-menu-title-content > .header0-item-block").click(); - cy.get("#email").clear(); - cy.get("#email").type("patrick@imex.dev"); - cy.get("#password").clear(); - cy.get("#password").type("patrick123{enter}"); - cy.get(".ant-form > .ant-btn").click(); - /* ==== End Cypress Studio ==== */ - }); -}); diff --git a/client/cypress/e2e/1-getting-started/todo.cy.js b/client/cypress/e2e/1-getting-started/todo.cy.js deleted file mode 100644 index 87e609ced..000000000 --- a/client/cypress/e2e/1-getting-started/todo.cy.js +++ /dev/null @@ -1,124 +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