♻️ (addNewVariableButton.tsx): remove unused Button import and add data-testid to Save Variable button for better testing ♻️ (index.tsx): add preventDefault to button click handlers to prevent form submission ♻️ (sideBarFolderButtons): add data-testid attributes to buttons and inputs for better testing and readability ♻️ (api.tsx): refactor duplicate request check logic into helper function ✨ (api.tsx): add helper function to check and store duplicate requests ♻️ (genericNode): refactor code for better readability and maintainability 💡 (genericNode): add data-testid attribute for testing purposes 🐛 (use-fetch-data-on-mount): fix error handling to prevent undefined errors 🐛 (use-handle-new-value.tsx, use-handle-refresh-buttons.tsx): fix potential undefined errors in error handling ✨ (baseModal/index.tsx, flowSettingsModal/index.tsx): add data-testid attributes for better testability ♻️ (editNodeModal/index.tsx): refactor code for better readability and consistency ♻️ (nodeToolbarComponent): remove trailing commas to improve code style ♻️ (GeneralPage): reorder imports and remove trailing commas for consistency ✅ (chatInputOutput.spec.ts): update path to ChatTest.json for better file organization ✅ (chatInputOutputUser.spec.ts): add additional interactions to chat test ✅ (dragAndDrop.spec.ts): update file path for collection.json ✅ (dropdownComponent.spec.ts): fix formatting and improve locator usage ✅ (filterEdge.spec.ts): fix locator strings and remove redundant code ✅ (floatComponent.spec.ts): remove redundant cache checks and fix locator strings ✅ (flowSettings.spec.ts): update test to use data-testid for save button ✅ (folders.spec.ts): refactor folder creation and editing to use data-testid ✅ (globalVariables.spec.ts): remove redundant save button click in test ✅ (tests): update test locators to use more specific selectors - Change locators for "Save Changes" button to use `getByText` with exact match - Update locators for `showchroma_server_http_port` in `inputComponent.spec.ts` - Add additional test steps in `intComponent.spec.ts` for better coverage ✅ (keyPairListComponent.spec.ts, langflowShortcuts.spec.ts, logs.spec.ts): update locators for better test stability and readability ✅ (tests): update end-to-end tests for improved stability and accuracy ✅ (textInputOutput.spec.ts): update locators and placeholders for accuracy ✅ (toggleComponent.spec.ts): replace locators with getByText for clarity
181 lines
5.8 KiB
TypeScript
181 lines
5.8 KiB
TypeScript
import { expect, test } from "@playwright/test";
|
|
|
|
test("ToggleComponent", async ({ page }) => {
|
|
await page.goto("/");
|
|
await page.waitForTimeout(2000);
|
|
|
|
let modalCount = 0;
|
|
try {
|
|
const modalTitleElement = await page?.getByTestId("modal-title");
|
|
if (modalTitleElement) {
|
|
modalCount = await modalTitleElement.count();
|
|
}
|
|
} catch (error) {
|
|
modalCount = 0;
|
|
}
|
|
|
|
while (modalCount === 0) {
|
|
await page.getByText("New Project", { exact: true }).click();
|
|
await page.waitForTimeout(5000);
|
|
modalCount = await page.getByTestId("modal-title")?.count();
|
|
}
|
|
|
|
await page.getByTestId("blank-flow").click();
|
|
await page.waitForTimeout(1000);
|
|
await page.getByTestId("extended-disclosure").click();
|
|
await page.getByPlaceholder("Search").click();
|
|
await page.getByPlaceholder("Search").fill("directory");
|
|
|
|
await page.waitForTimeout(1000);
|
|
await page
|
|
.getByTestId("dataDirectory")
|
|
.dragTo(page.locator('//*[@id="react-flow-id"]'));
|
|
await page.mouse.up();
|
|
await page.mouse.down();
|
|
|
|
await page.getByTitle("fit view").click();
|
|
await page.getByTitle("zoom out").click();
|
|
await page.getByTitle("zoom out").click();
|
|
await page.getByTitle("zoom out").click();
|
|
|
|
await page.getByTestId("div-generic-node").click();
|
|
|
|
await page.getByTestId("more-options-modal").click();
|
|
await page.getByTestId("edit-button-modal").click();
|
|
|
|
await page.locator('//*[@id="showload_hidden"]').click();
|
|
expect(
|
|
await page.locator('//*[@id="showload_hidden"]').isChecked()
|
|
).toBeTruthy();
|
|
|
|
await page.getByText("Save Changes", { exact: true }).click();
|
|
|
|
await page.getByTitle("fit view").click();
|
|
|
|
await page.getByTestId("toggle-load_hidden").click();
|
|
expect(await page.getByTestId("toggle-load_hidden").isChecked()).toBeTruthy();
|
|
|
|
await page.getByTestId("toggle-load_hidden").click();
|
|
expect(await page.getByTestId("toggle-load_hidden").isChecked()).toBeFalsy();
|
|
|
|
await page.getByTestId("toggle-load_hidden").click();
|
|
expect(await page.getByTestId("toggle-load_hidden").isChecked()).toBeTruthy();
|
|
|
|
await page.getByTestId("toggle-load_hidden").click();
|
|
expect(await page.getByTestId("toggle-load_hidden").isChecked()).toBeFalsy();
|
|
|
|
await page.getByTestId("toggle-load_hidden").click();
|
|
expect(await page.getByTestId("toggle-load_hidden").isChecked()).toBeTruthy();
|
|
|
|
await page.getByTestId("div-generic-node").click();
|
|
|
|
await page.getByTitle("fit view").click();
|
|
await page.getByTitle("zoom out").click();
|
|
await page.getByTitle("zoom out").click();
|
|
await page.getByTitle("zoom out").click();
|
|
|
|
await page.getByTestId("more-options-modal").click();
|
|
await page.getByTestId("edit-button-modal").click();
|
|
|
|
expect(await page.getByTestId("toggle-load_hidden").isChecked()).toBeTruthy();
|
|
|
|
await page.locator('//*[@id="showload_hidden"]').click();
|
|
expect(
|
|
await page.locator('//*[@id="showload_hidden"]').isChecked()
|
|
).toBeFalsy();
|
|
|
|
await page.locator('//*[@id="showmax_concurrency"]').click();
|
|
expect(
|
|
await page.locator('//*[@id="showmax_concurrency"]').isChecked()
|
|
).toBeTruthy();
|
|
|
|
await page.locator('//*[@id="showpath"]').click();
|
|
expect(await page.locator('//*[@id="showpath"]').isChecked()).toBeFalsy();
|
|
|
|
await page.locator('//*[@id="showrecursive"]').click();
|
|
expect(
|
|
await page.locator('//*[@id="showrecursive"]').isChecked()
|
|
).toBeTruthy();
|
|
|
|
await page.locator('//*[@id="showsilent_errors"]').click();
|
|
expect(
|
|
await page.locator('//*[@id="showsilent_errors"]').isChecked()
|
|
).toBeTruthy();
|
|
|
|
await page.locator('//*[@id="showuse_multithreading"]').click();
|
|
expect(
|
|
await page.locator('//*[@id="showuse_multithreading"]').isChecked()
|
|
).toBeTruthy();
|
|
|
|
await page.locator('//*[@id="showmax_concurrency"]').click();
|
|
expect(
|
|
await page.locator('//*[@id="showmax_concurrency"]').isChecked()
|
|
).toBeFalsy();
|
|
|
|
await page.locator('//*[@id="showpath"]').click();
|
|
expect(await page.locator('//*[@id="showpath"]').isChecked()).toBeTruthy();
|
|
|
|
await page.locator('//*[@id="showrecursive"]').click();
|
|
expect(
|
|
await page.locator('//*[@id="showrecursive"]').isChecked()
|
|
).toBeFalsy();
|
|
|
|
await page.locator('//*[@id="showsilent_errors"]').click();
|
|
expect(
|
|
await page.locator('//*[@id="showsilent_errors"]').isChecked()
|
|
).toBeFalsy();
|
|
|
|
await page.locator('//*[@id="showuse_multithreading"]').click();
|
|
expect(
|
|
await page.locator('//*[@id="showuse_multithreading"]').isChecked()
|
|
).toBeFalsy();
|
|
|
|
await page.getByText("Save Changes", { exact: true }).click();
|
|
|
|
const plusButtonLocator = page.getByTestId("toggle-load_hidden");
|
|
const elementCount = await plusButtonLocator?.count();
|
|
if (elementCount === 0) {
|
|
expect(true).toBeTruthy();
|
|
|
|
await page.getByTestId("div-generic-node").click();
|
|
|
|
await page.getByTestId("more-options-modal").click();
|
|
await page.getByTestId("edit-button-modal").click();
|
|
|
|
await page.locator('//*[@id="showload_hidden"]').click();
|
|
expect(
|
|
await page.locator('//*[@id="showload_hidden"]').isChecked()
|
|
).toBeTruthy();
|
|
|
|
expect(
|
|
await page.getByTestId("toggle-edit-load_hidden").isChecked()
|
|
).toBeTruthy();
|
|
|
|
await page.getByText("Save Changes", { exact: true }).click();
|
|
|
|
await page.getByTestId("toggle-load_hidden").click();
|
|
expect(
|
|
await page.getByTestId("toggle-load_hidden").isChecked()
|
|
).toBeFalsy();
|
|
|
|
await page.getByTestId("toggle-load_hidden").click();
|
|
expect(
|
|
await page.getByTestId("toggle-load_hidden").isChecked()
|
|
).toBeTruthy();
|
|
|
|
await page.getByTestId("toggle-load_hidden").click();
|
|
expect(
|
|
await page.getByTestId("toggle-load_hidden").isChecked()
|
|
).toBeFalsy();
|
|
|
|
await page.getByTestId("toggle-load_hidden").click();
|
|
expect(
|
|
await page.getByTestId("toggle-load_hidden").isChecked()
|
|
).toBeTruthy();
|
|
|
|
await page.getByTestId("toggle-load_hidden").click();
|
|
expect(
|
|
await page.getByTestId("toggle-load_hidden").isChecked()
|
|
).toBeFalsy();
|
|
}
|
|
});
|