diff --git a/src/frontend/run-tests.sh b/src/frontend/run-tests.sh index 76e2fd756..39d4fe833 100755 --- a/src/frontend/run-tests.sh +++ b/src/frontend/run-tests.sh @@ -42,26 +42,13 @@ make frontend & # Give some time for the frontend to start (adjust sleep duration as needed) sleep 10 -# Navigate to the test directory -cd src/frontend - -# Run frontend only Playwright tests with or without UI based on the --ui flag -if [ "$ui" = true ]; then - PLAYWRIGHT_HTML_REPORT=playwright-report/onlyFront npx playwright test tests/onlyFront --ui --project=chromium -else - PLAYWRIGHT_HTML_REPORT=playwright-report/onlyFront npx playwright test tests/onlyFront --project=chromium -fi - -# Navigate back to the project root directory -cd ../../ - # Start the backend using 'make backend' in the background -make backend & +make backend LANGFLOW_DATABASE_URL=sqlite:// & # Give some time for the backend to start (adjust sleep duration as needed) sleep 25 -# Navigate back to the test directory +# Navigate to the test directory cd src/frontend # Run Playwright tests with or without UI based on the --ui flag diff --git a/src/frontend/tests/onlyFront/assets/collection.json b/src/frontend/tests/end-to-end/assets/collection.json similarity index 100% rename from src/frontend/tests/onlyFront/assets/collection.json rename to src/frontend/tests/end-to-end/assets/collection.json diff --git a/src/frontend/tests/onlyFront/assets/flow.json b/src/frontend/tests/end-to-end/assets/flow.json similarity index 100% rename from src/frontend/tests/onlyFront/assets/flow.json rename to src/frontend/tests/end-to-end/assets/flow.json diff --git a/src/frontend/tests/onlyFront/assets/flowtest.json b/src/frontend/tests/end-to-end/assets/flowtest.json similarity index 100% rename from src/frontend/tests/onlyFront/assets/flowtest.json rename to src/frontend/tests/end-to-end/assets/flowtest.json diff --git a/src/frontend/tests/onlyFront/auto_login.spec.ts b/src/frontend/tests/end-to-end/auto_login.spec.ts similarity index 77% rename from src/frontend/tests/onlyFront/auto_login.spec.ts rename to src/frontend/tests/end-to-end/auto_login.spec.ts index cdceca5e5..8231e6a29 100644 --- a/src/frontend/tests/onlyFront/auto_login.spec.ts +++ b/src/frontend/tests/end-to-end/auto_login.spec.ts @@ -2,19 +2,11 @@ import { test } from "@playwright/test"; test.describe("Auto_login tests", () => { test("auto_login sign in", async ({ page }) => { - await page.routeFromHAR("harFiles/langflow.har", { - url: "**/api/v1/**", - update: false, - }); await page.goto("http:localhost:3000/"); await page.locator('//*[@id="new-project-btn"]').click(); }); test("auto_login block_admin", async ({ page }) => { - await page.routeFromHAR("harFiles/langflow.har", { - url: "**/api/v1/**", - update: false, - }); await page.goto("http:localhost:3000/"); await page.locator('//*[@id="new-project-btn"]').click(); await page.goto("http:localhost:3000/login"); diff --git a/src/frontend/tests/onlyFront/dragAndDrop.spec.ts b/src/frontend/tests/end-to-end/dragAndDrop.spec.ts similarity index 78% rename from src/frontend/tests/onlyFront/dragAndDrop.spec.ts rename to src/frontend/tests/end-to-end/dragAndDrop.spec.ts index a8e580f61..4f1d2f9c9 100644 --- a/src/frontend/tests/onlyFront/dragAndDrop.spec.ts +++ b/src/frontend/tests/end-to-end/dragAndDrop.spec.ts @@ -4,16 +4,6 @@ import { readFileSync } from "fs"; test.describe("drag and drop test", () => { /// test("drop collection", async ({ page }) => { - // await page.routeFromHAR("harFiles/langflow.har", { - // url: "**/api/v1/**", - // update: false, - // }); - // await page.route("**/api/v1/flows/", async (route) => { - // const json = { - // id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - // }; - // await route.fulfill({ json, status: 201 }); - // }); await page.goto("http:localhost:3000/"); await page.locator("span").filter({ hasText: "My Collection" }).isVisible(); // Read your file into a buffer. diff --git a/src/frontend/tests/onlyFront/dropdownComponent.spec.ts b/src/frontend/tests/end-to-end/dropdownComponent.spec.ts similarity index 90% rename from src/frontend/tests/onlyFront/dropdownComponent.spec.ts rename to src/frontend/tests/end-to-end/dropdownComponent.spec.ts index a92cf0389..3fdb49d54 100644 --- a/src/frontend/tests/onlyFront/dropdownComponent.spec.ts +++ b/src/frontend/tests/end-to-end/dropdownComponent.spec.ts @@ -1,17 +1,6 @@ import { expect, test } from "@playwright/test"; test("dropDownComponent", async ({ page }) => { - // await page.routeFromHAR("harFiles/backend_12112023.har", { - // url: "**/api/v1/**", - // update: false, - // }); - // await page.route("**/api/v1/flows/", async (route) => { - // const json = { - // id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - // }; - // await route.fulfill({ json, status: 201 }); - // }); - await page.goto("http://localhost:3000/"); await page.waitForTimeout(2000); diff --git a/src/frontend/tests/onlyFront/floatComponent.spec.ts b/src/frontend/tests/end-to-end/floatComponent.spec.ts similarity index 97% rename from src/frontend/tests/onlyFront/floatComponent.spec.ts rename to src/frontend/tests/end-to-end/floatComponent.spec.ts index 6441987b2..a9d21f95a 100644 --- a/src/frontend/tests/onlyFront/floatComponent.spec.ts +++ b/src/frontend/tests/end-to-end/floatComponent.spec.ts @@ -1,16 +1,6 @@ import { expect, test } from "@playwright/test"; test("FloatComponent", async ({ page }) => { - // await page.routeFromHAR("harFiles/backend_12112023.har", { - // url: "**/api/v1/**", - // update: false, - // }); - // await page.route("**/api/v1/flows/", async (route) => { - // const json = { - // id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - // }; - // await route.fulfill({ json, status: 201 }); - // }); await page.goto("http://localhost:3000/"); await page.waitForTimeout(2000); diff --git a/src/frontend/tests/onlyFront/flowPage.spec.ts b/src/frontend/tests/end-to-end/flowPage.spec.ts similarity index 73% rename from src/frontend/tests/onlyFront/flowPage.spec.ts rename to src/frontend/tests/end-to-end/flowPage.spec.ts index 94c59d6fe..7b509864f 100644 --- a/src/frontend/tests/onlyFront/flowPage.spec.ts +++ b/src/frontend/tests/end-to-end/flowPage.spec.ts @@ -7,16 +7,6 @@ test.describe("Flow Page tests", () => { } test("save", async ({ page }) => { - // await page.routeFromHAR("harFiles/backend_12112023.har", { - // url: "**/api/v1/**", - // update: false, - // }); - // await page.route("**/api/v1/flows/", async (route) => { - // const json = { - // id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - // }; - // await route.fulfill({ json, status: 201 }); - // }); await page.goto("http://localhost:3000/"); await page.waitForTimeout(2000); diff --git a/src/frontend/tests/onlyFront/group.spec.ts b/src/frontend/tests/end-to-end/group.spec.ts similarity index 87% rename from src/frontend/tests/onlyFront/group.spec.ts rename to src/frontend/tests/end-to-end/group.spec.ts index dcd557279..408115939 100644 --- a/src/frontend/tests/onlyFront/group.spec.ts +++ b/src/frontend/tests/end-to-end/group.spec.ts @@ -4,16 +4,6 @@ import { readFileSync } from "fs"; test.describe("group node test", () => { /// test("group and ungroup updating values", async ({ page }) => { - await page.routeFromHAR("harFiles/langflow.har", { - url: "**/api/v1/**", - update: false, - }); - await page.route("**/api/v1/flows/", async (route) => { - const json = { - id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - }; - await route.fulfill({ json, status: 201 }); - }); await page.goto("http:localhost:3000/"); await page.locator("span").filter({ hasText: "My Collection" }).isVisible(); // Read your file into a buffer. diff --git a/src/frontend/tests/onlyFront/inputComponent.spec.ts b/src/frontend/tests/end-to-end/inputComponent.spec.ts similarity index 93% rename from src/frontend/tests/onlyFront/inputComponent.spec.ts rename to src/frontend/tests/end-to-end/inputComponent.spec.ts index e9622c038..5992b7a12 100644 --- a/src/frontend/tests/onlyFront/inputComponent.spec.ts +++ b/src/frontend/tests/end-to-end/inputComponent.spec.ts @@ -1,16 +1,6 @@ import { expect, test } from "@playwright/test"; test("InputComponent", async ({ page }) => { - // await page.routeFromHAR("harFiles/langflow.har", { - // url: "**/api/v1/**", - // update: false, - // }); - // await page.route("**/api/v1/flows/", async (route) => { - // const json = { - // id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - // }; - // await route.fulfill({ json, status: 201 }); - // }); await page.goto("http://localhost:3000/"); await page.waitForTimeout(2000); diff --git a/src/frontend/tests/onlyFront/intComponent.spec.ts b/src/frontend/tests/end-to-end/intComponent.spec.ts similarity index 91% rename from src/frontend/tests/onlyFront/intComponent.spec.ts rename to src/frontend/tests/end-to-end/intComponent.spec.ts index be119a240..0cf355832 100644 --- a/src/frontend/tests/onlyFront/intComponent.spec.ts +++ b/src/frontend/tests/end-to-end/intComponent.spec.ts @@ -1,17 +1,6 @@ import { expect, test } from "@playwright/test"; test("IntComponent", async ({ page }) => { - // await page.routeFromHAR("harFiles/backend_12112023.har", { - // url: "**/api/v1/**", - // update: false, - // }); - // await page.route("**/api/v1/flows/", async (route) => { - // const json = { - // id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - // }; - // await route.fulfill({ json, status: 201 }); - // }); - await page.goto("http://localhost:3000/"); await page.waitForTimeout(2000); diff --git a/src/frontend/tests/onlyFront/keyPairListComponent.spec.ts b/src/frontend/tests/end-to-end/keyPairListComponent.spec.ts similarity index 94% rename from src/frontend/tests/onlyFront/keyPairListComponent.spec.ts rename to src/frontend/tests/end-to-end/keyPairListComponent.spec.ts index 2287383a5..ad61d1e9f 100644 --- a/src/frontend/tests/onlyFront/keyPairListComponent.spec.ts +++ b/src/frontend/tests/end-to-end/keyPairListComponent.spec.ts @@ -1,16 +1,6 @@ import { expect, test } from "@playwright/test"; test("KeypairListComponent", async ({ page }) => { - // await page.routeFromHAR("harFiles/backend_12112023.har", { - // url: "**/api/v1/**", - // update: false, - // }); - // await page.route("**/api/v1/flows/", async (route) => { - // const json = { - // id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - // }; - // await route.fulfill({ json, status: 201 }); - // }); await page.goto("http://localhost:3000/"); await page.waitForTimeout(2000); diff --git a/src/frontend/tests/onlyFront/nestedComponent.spec.ts b/src/frontend/tests/end-to-end/nestedComponent.spec.ts similarity index 94% rename from src/frontend/tests/onlyFront/nestedComponent.spec.ts rename to src/frontend/tests/end-to-end/nestedComponent.spec.ts index ad1cbed30..2cabf2f85 100644 --- a/src/frontend/tests/onlyFront/nestedComponent.spec.ts +++ b/src/frontend/tests/end-to-end/nestedComponent.spec.ts @@ -1,16 +1,6 @@ import { expect, test } from "@playwright/test"; test("NestedComponent", async ({ page }) => { - // await page.routeFromHAR("harFiles/backend_12112023.har", { - // url: "**/api/v1/**", - // update: false, - // }); - // await page.route("**/api/v1/flows/", async (route) => { - // const json = { - // id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - // }; - // await route.fulfill({ json, status: 201 }); - // }); await page.goto("http://localhost:3000/"); await page.waitForTimeout(2000); diff --git a/src/frontend/tests/onlyFront/saveComponents.spec.ts b/src/frontend/tests/end-to-end/saveComponents.spec.ts similarity index 89% rename from src/frontend/tests/onlyFront/saveComponents.spec.ts rename to src/frontend/tests/end-to-end/saveComponents.spec.ts index 11bbbdd60..3b7a6e71d 100644 --- a/src/frontend/tests/onlyFront/saveComponents.spec.ts +++ b/src/frontend/tests/end-to-end/saveComponents.spec.ts @@ -11,17 +11,6 @@ test.describe("save component tests", () => { /// test("save group component tests", async ({ page }) => { - //make front work withoput backend - // await page.routeFromHAR("harFiles/langflow.har", { - // url: "**/api/v1/**", - // update: false, - // }); - // await page.route("**/api/v1/flows/", async (route) => { - // const json = { - // id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - // }; - // await route.fulfill({ json, status: 201 }); - // }); await page.goto("http:localhost:3000/"); await page.locator("span").filter({ hasText: "My Collection" }).isVisible(); // Read your file into a buffer. diff --git a/src/frontend/tests/onlyFront/toggleComponent.spec.ts b/src/frontend/tests/end-to-end/toggleComponent.spec.ts similarity index 94% rename from src/frontend/tests/onlyFront/toggleComponent.spec.ts rename to src/frontend/tests/end-to-end/toggleComponent.spec.ts index 25ca747c4..bdba6e56f 100644 --- a/src/frontend/tests/onlyFront/toggleComponent.spec.ts +++ b/src/frontend/tests/end-to-end/toggleComponent.spec.ts @@ -1,16 +1,6 @@ import { expect, test } from "@playwright/test"; test("ToggleComponent", async ({ page }) => { - // await page.routeFromHAR("harFiles/langflow.har", { - // url: "**/api/v1/**", - // update: false, - // }); - // await page.route("**/api/v1/flows/", async (route) => { - // const json = { - // id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - // }; - // await route.fulfill({ json, status: 201 }); - // }); await page.goto("http://localhost:3000/"); await page.waitForTimeout(2000); diff --git a/src/frontend/tests/onlyFront/login.spec.ts b/src/frontend/tests/onlyFront/login.spec.ts deleted file mode 100644 index 119d00a37..000000000 --- a/src/frontend/tests/onlyFront/login.spec.ts +++ /dev/null @@ -1,121 +0,0 @@ -import { test } from "@playwright/test"; - -test.describe("Login Tests", () => { - test("Login_Success", async ({ page }) => { - // await page.route("**/api/v1/login", async (route) => { - // const json = { - // access_token: - // "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJhMWNlM2FkOS1iZTE2LTRiNjgtOGRhYi1hYjA4YTVjMmZjZTkiLCJleHAiOjE2OTUyNTIwNTh9.MBYFwMhTcZnsW_L7p4qavUhSDylCllJQWUCJdU1wX8o", - // refresh_token: - // "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJhMWNlM2FkOS1iZTE2LTRiNjgtOGRhYi1hYjA4YTVjMmZjZTkiLCJ0eXBlIjoicmYiLCJleHAiOjE2OTUyNTI2NTh9.a4wL9-XK_zyTyrXduBFgCsODFXrqiByVr5HOeiCbiQA", - // token_type: "bearer", - // }; - // await route.fulfill({ json }); - // }); - // await page.goto("http://localhost:3000/"); - // await page.waitForURL("http://localhost:3000/login"); - // await page.waitForURL("http://localhost:3000/login", { timeout: 100 }); - // await page.getByPlaceholder("Username").click(); - // await page.getByPlaceholder("Username").fill("test"); - // await page.getByPlaceholder("Password").click(); - // await page.getByPlaceholder("Password").fill("test"); - // await page.getByRole("button", { name: "Sign in" }).click(); - // await page.getByRole("button", { name: "Community Examples" }).click(); - // await page.waitForSelector(".community-pages-flows-panel"); - // expect( - // await page - // .locator(".community-pages-flows-panel") - // .evaluate((el) => el.children) - // ).toBeTruthy(); - // }); - // test("Login Error", async ({ page }) => { - // await page.route("**/api/v1/login", async (route) => { - // const json = { detail: "Incorrect username or password" }; - // await route.fulfill({ json, status: 401 }); - // }); - // await page.goto("http://localhost:3000/"); - // await page.waitForURL("http://localhost:3000/login"); - // await page.waitForURL("http://localhost:3000/login", { timeout: 100 }); - // await page.getByPlaceholder("Username").click(); - // await page.getByPlaceholder("Username").fill("test"); - // await page.getByPlaceholder("Password").click(); - // await page.getByPlaceholder("Password").fill("test5"); - // await page.getByRole("button", { name: "Sign in" }).click(); - // await page.getByRole("heading", { name: "Error signing in" }).click(); - // }); - // test("Login create account wrong form", async ({ page }) => { - // const fullfillForm = async (username, password, confirmPassword) => { - // await page.getByPlaceholder("Username").click(); - // await page.getByPlaceholder("Username").fill(username); - // await page.getByPlaceholder("Password", { exact: true }).click(); - // await page.getByPlaceholder("Password", { exact: true }).fill(password); - // await page.getByPlaceholder("Confirm your password").click(); - // await page - // .getByPlaceholder("Confirm your password") - // .fill(confirmPassword); - // }; - // await page.goto("http://localhost:3000/"); - // await page.waitForURL("http://localhost:3000/login"); - // await page.waitForURL("http://localhost:3000/login", { timeout: 100 }); - // await page - // .getByRole("button", { name: "Don't have an account? Sign Up" }) - // .click(); - // await page.getByText("Sign up to Langflow").click(); - // await page.goto("http://localhost:3000/signup"); - // await page.getByText("Sign up to Langflow").click(); - // await fullfillForm("name", "vazz", "vazz5"); - // expect( - // await page.getByRole("button", { name: "Sign up" }).isDisabled() - // ).toBeTruthy(); - // await fullfillForm("", "vazz", "vazz"); - // expect( - // await page.getByRole("button", { name: "Sign up" }).isDisabled() - // ).toBeTruthy(); - // await fullfillForm("name", "", ""); - // expect( - // await page.getByRole("button", { name: "Sign up" }).isDisabled() - // ).toBeTruthy(); - // await fullfillForm("", "", ""); - // expect( - // await page.getByRole("button", { name: "Sign up" }).isDisabled() - // ).toBeTruthy(); - // }); - // test("Login create account success", async ({ page }) => { - // await page.route("**/api/v1/users/", async (route) => { - // const json = { - // id: "e9ac1bdc-429b-475d-ac03-d26f9a2a3210", - // username: "teste", - // profile_image: null, - // is_active: false, - // is_superuser: false, - // create_at: "2023-09-21T01:45:51.873303", - // updated_at: "2023-09-21T01:45:51.873305", - // last_login_at: null, - // }; - // await route.fulfill({ json, status: 201 }); - // }); - // const submitForm = async (username, password, confirmPassword) => { - // await page.getByPlaceholder("Username").click(); - // await page.getByPlaceholder("Username").fill(username); - // await page.getByPlaceholder("Password", { exact: true }).click(); - // await page.getByPlaceholder("Password", { exact: true }).fill(password); - // await page.getByPlaceholder("Confirm your password").click(); - // await page - // .getByPlaceholder("Confirm your password") - // .fill(confirmPassword); - // }; - // await page.goto("http://localhost:3000/"); - // await page.waitForURL("http://localhost:3000/login"); - // await page.waitForURL("http://localhost:3000/login", { timeout: 100 }); - // await page - // .getByRole("button", { name: "Don't have an account? Sign Up" }) - // .click(); - // await page.getByText("Sign up to Langflow").click(); - // await page.goto("http://localhost:3000/signup"); - // await page.getByText("Sign up to Langflow").click(); - // await submitForm("teste", "pass", "pass"); - // await page.getByRole("button", { name: "Sign up" }).click(); - // await page.waitForURL("http://localhost:3000/login", { timeout: 1000 }); - // await page.getByText("Account created! Await admin activation.").click(); - }); -});