fix: Enhance Growth UI Layout and Consistency (#7768)
This commit is contained in:
parent
f213f487a6
commit
60de34074b
32 changed files with 260 additions and 323 deletions
|
|
@ -80,8 +80,8 @@ withEventDeliveryModes(
|
|||
const output = await page.getByTestId("div-chat-message").allTextContents();
|
||||
const outputText = output.join("\n");
|
||||
|
||||
expect(outputText.toLowerCase()).toContain("weather");
|
||||
expect(outputText.toLowerCase()).toContain("budget");
|
||||
expect(outputText.toLowerCase()).toContain("travel");
|
||||
expect(outputText.toLowerCase()).toContain("day");
|
||||
|
||||
expect(outputText.toLowerCase()).toContain(randomCity.toLowerCase());
|
||||
expect(outputText.toLowerCase()).toContain(randomCity2.toLowerCase());
|
||||
|
|
|
|||
|
|
@ -37,35 +37,6 @@ withEventDeliveryModes(
|
|||
|
||||
await initialGPTsetup(page);
|
||||
|
||||
if (process?.env?.ASTRA_DB_API_ENDPOINT?.includes("astra-dev")) {
|
||||
await page.getByTestId("title-Astra DB").first().click();
|
||||
await page.getByTestId("code-button-modal").click();
|
||||
await page.waitForSelector("text=Edit Code", {
|
||||
timeout: 3000,
|
||||
});
|
||||
let cleanCode = await extractAndCleanCode(page);
|
||||
cleanCode = cleanCode!.replace(
|
||||
'"pre_delete_collection": self.pre_delete_collection or False,',
|
||||
'"pre_delete_collection": self.pre_delete_collection or False,\n "environment": "dev",',
|
||||
);
|
||||
await page.locator("textarea").last().press(`ControlOrMeta+a`);
|
||||
await page.keyboard.press("Backspace");
|
||||
await page.locator("textarea").last().fill(cleanCode);
|
||||
await page.locator('//*[@id="checkAndSaveBtn"]').click();
|
||||
await page.waitForSelector('[data-testid="title-Astra DB"]', {
|
||||
timeout: 3000,
|
||||
});
|
||||
await page.getByTestId("title-Astra DB").last().click();
|
||||
await page.getByTestId("code-button-modal").click();
|
||||
await page.waitForSelector("text=Edit Code", {
|
||||
timeout: 3000,
|
||||
});
|
||||
await page.locator("textarea").last().press(`ControlOrMeta+a`);
|
||||
await page.keyboard.press("Backspace");
|
||||
await page.locator("textarea").last().fill(cleanCode);
|
||||
await page.locator('//*[@id="checkAndSaveBtn"]').click();
|
||||
}
|
||||
|
||||
await page.waitForSelector('[data-testid="title-Astra DB"]', {
|
||||
timeout: 3000,
|
||||
});
|
||||
|
|
@ -263,7 +234,10 @@ withEventDeliveryModes(
|
|||
path.join(__dirname, "../../assets/test_file.txt"),
|
||||
);
|
||||
await page.getByText("test_file.txt").last().isVisible();
|
||||
await page.waitForTimeout(500);
|
||||
await page.waitForSelector("text=file uploaded successfully", {
|
||||
timeout: 10000,
|
||||
});
|
||||
await page.waitForTimeout(3000);
|
||||
await page.getByTestId("select-files-modal-button").click();
|
||||
await page.getByTestId("button_run_astra db").last().click();
|
||||
await page.waitForSelector("text=built successfully", {
|
||||
|
|
|
|||
|
|
@ -19,6 +19,8 @@ test(
|
|||
|
||||
await page.keyboard.press("Enter");
|
||||
|
||||
await page.waitForTimeout(1000);
|
||||
|
||||
let flowName = await page.getByTestId("input-flow-name").inputValue();
|
||||
|
||||
expect(flowName).toBe(randomName);
|
||||
|
|
@ -44,6 +46,8 @@ test(
|
|||
|
||||
await page.keyboard.press("Enter");
|
||||
|
||||
await page.waitForTimeout(1000);
|
||||
|
||||
flowName = await page.getByTestId("input-flow-name").inputValue();
|
||||
|
||||
expect(flowName).toBe(randomName2);
|
||||
|
|
@ -84,6 +88,8 @@ test(
|
|||
|
||||
await page.keyboard.press("Enter");
|
||||
|
||||
await page.waitForTimeout(1000);
|
||||
|
||||
flowName = await page.getByTestId("input-flow-name").inputValue();
|
||||
|
||||
expect(flowName).toBe(randomName4);
|
||||
|
|
|
|||
|
|
@ -1,14 +1,15 @@
|
|||
import { test } from "@playwright/test";
|
||||
import { awaitBootstrapTest } from "../../utils/await-bootstrap-test";
|
||||
|
||||
test("should exists Store", { tag: ["@release"] }, async ({ page }) => {
|
||||
await page.goto("/");
|
||||
await awaitBootstrapTest(page, { skipModal: true });
|
||||
|
||||
await page.getByTestId("button-store").isVisible();
|
||||
await page.getByTestId("button-store").isEnabled();
|
||||
});
|
||||
|
||||
test("should not have an API key", { tag: ["@release"] }, async ({ page }) => {
|
||||
await page.goto("/");
|
||||
await awaitBootstrapTest(page, { skipModal: true });
|
||||
|
||||
await page.getByTestId("button-store").click();
|
||||
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ test.skip(
|
|||
if (!process.env.CI) {
|
||||
dotenv.config({ path: path.resolve(__dirname, "../../.env") });
|
||||
}
|
||||
await awaitBootstrapTest(page);
|
||||
await awaitBootstrapTest(page, { skipModal: true });
|
||||
|
||||
await page.getByText("Close", { exact: true }).click();
|
||||
await page.waitForTimeout(1000);
|
||||
|
|
@ -96,7 +96,8 @@ test.skip(
|
|||
dotenv.config({ path: path.resolve(__dirname, "../../.env") });
|
||||
}
|
||||
|
||||
await page.goto("/");
|
||||
await awaitBootstrapTest(page, { skipModal: true });
|
||||
|
||||
await page.waitForTimeout(1000);
|
||||
|
||||
await page.getByTestId("button-store").click();
|
||||
|
|
|
|||
|
|
@ -1,11 +1,14 @@
|
|||
import { expect, test } from "@playwright/test";
|
||||
import * as dotenv from "dotenv";
|
||||
import path from "path";
|
||||
import { awaitBootstrapTest } from "../../utils/await-bootstrap-test";
|
||||
|
||||
test(
|
||||
"should order the visualization (requires store API key)",
|
||||
{ tag: ["@release"] },
|
||||
async ({ page }) => {
|
||||
async ({ page, context }) => {
|
||||
test.skip();
|
||||
|
||||
test.skip(
|
||||
!process?.env?.STORE_API_KEY,
|
||||
"STORE_API_KEY required to run this test",
|
||||
|
|
@ -15,45 +18,71 @@ test(
|
|||
dotenv.config({ path: path.resolve(__dirname, "../../.env") });
|
||||
}
|
||||
|
||||
await page.goto("/");
|
||||
await awaitBootstrapTest(page, { skipModal: true });
|
||||
|
||||
await page.getByTestId("button-store").click();
|
||||
await page.waitForTimeout(1000);
|
||||
await page.waitForSelector('[data-testid="button-store"]', {
|
||||
state: "visible",
|
||||
timeout: 10000,
|
||||
});
|
||||
|
||||
await page.getByTestId("api-key-button-store").click({
|
||||
const [newPageStore] = await Promise.all([
|
||||
context.waitForEvent("page"),
|
||||
page.getByTestId("button-store").click(),
|
||||
]);
|
||||
|
||||
await newPageStore.waitForTimeout(1000);
|
||||
|
||||
await newPageStore.getByTestId("api-key-button-store").click({
|
||||
timeout: 200000,
|
||||
});
|
||||
|
||||
await page
|
||||
await newPageStore.getByTestId("sidebar-nav-Langflow Store").click();
|
||||
|
||||
await newPageStore
|
||||
.getByPlaceholder("Insert your API Key")
|
||||
.fill(process.env.STORE_API_KEY ?? "");
|
||||
|
||||
await page.getByTestId("api-key-save-button-store").click();
|
||||
await newPageStore.getByTestId("api-key-save-button-store").click();
|
||||
|
||||
await expect(page.getByText("API key saved successfully")).toBeVisible({
|
||||
await expect(
|
||||
newPageStore.getByText("API key saved successfully"),
|
||||
).toBeVisible({
|
||||
timeout: 5000,
|
||||
});
|
||||
|
||||
await page.getByTestId("button-store").click();
|
||||
await newPageStore.getByTestId("back_page_button").click();
|
||||
|
||||
await expect(page.getByText("Basic RAG")).toBeVisible({ timeout: 30000 });
|
||||
await newPageStore.waitForTimeout(1000);
|
||||
|
||||
await page.getByTestId("select-order-store").click();
|
||||
const newPageStore2 = await context.newPage();
|
||||
|
||||
await page.getByText("Alphabetical").click();
|
||||
await newPageStore2.goto("/store");
|
||||
|
||||
await page.getByText("Album Cover Builder").isVisible();
|
||||
await newPageStore2.waitForTimeout(1000);
|
||||
|
||||
await page.getByTestId("select-order-store").click();
|
||||
await page.getByText("Popular").click();
|
||||
await expect(newPageStore2.getByText("Basic RAG")).toBeVisible({
|
||||
timeout: 30000,
|
||||
});
|
||||
|
||||
await page.getByText("Basic RAG").isVisible();
|
||||
await newPageStore2.getByTestId("select-order-store").click();
|
||||
|
||||
await newPageStore2.getByText("Alphabetical").click();
|
||||
|
||||
await newPageStore2.getByText("Album Cover Builder").isVisible();
|
||||
|
||||
await newPageStore2.getByTestId("select-order-store").click();
|
||||
await newPageStore2.getByText("Popular").click();
|
||||
|
||||
await newPageStore2.getByText("Basic RAG").isVisible();
|
||||
},
|
||||
);
|
||||
|
||||
test(
|
||||
"should filter by type (requires store API key)",
|
||||
{ tag: ["@release"] },
|
||||
async ({ page }) => {
|
||||
async ({ page, context }) => {
|
||||
test.skip();
|
||||
test.skip(
|
||||
!process?.env?.STORE_API_KEY,
|
||||
"STORE_API_KEY required to run this test",
|
||||
|
|
@ -61,60 +90,95 @@ test(
|
|||
if (!process.env.CI) {
|
||||
dotenv.config({ path: path.resolve(__dirname, "../../.env") });
|
||||
}
|
||||
await page.goto("/");
|
||||
await awaitBootstrapTest(page, { skipModal: true });
|
||||
|
||||
await page.waitForSelector('[data-testid="button-store"]', {
|
||||
state: "visible",
|
||||
timeout: 10000,
|
||||
});
|
||||
|
||||
await page.getByTestId("button-store").click();
|
||||
await page.getByTestId("api-key-button-store").click({
|
||||
|
||||
const newPageStore = await context.waitForEvent("page", { timeout: 30000 });
|
||||
|
||||
await newPageStore.waitForTimeout(1000);
|
||||
|
||||
await newPageStore.getByTestId("api-key-button-store").click({
|
||||
timeout: 200000,
|
||||
});
|
||||
|
||||
await page
|
||||
await newPageStore.getByTestId("sidebar-nav-Langflow Store").click();
|
||||
|
||||
await newPageStore
|
||||
.getByPlaceholder("Insert your API Key")
|
||||
.fill(process.env.STORE_API_KEY ?? "");
|
||||
await page.getByTestId("api-key-save-button-store").click();
|
||||
await expect(page.getByText("API key saved successfully")).toBeVisible({
|
||||
await newPageStore.getByTestId("api-key-save-button-store").click();
|
||||
await expect(
|
||||
newPageStore.getByText("API key saved successfully"),
|
||||
).toBeVisible({
|
||||
timeout: 5000,
|
||||
});
|
||||
await page.getByTestId("button-store").click();
|
||||
await page.waitForSelector('[data-testid="likes-Website Content QA"]', {
|
||||
|
||||
await newPageStore.getByTestId("back_page_button").click();
|
||||
|
||||
await newPageStore.waitForTimeout(1000);
|
||||
|
||||
const newPageStore2 = await context.newPage();
|
||||
|
||||
await newPageStore2.goto("/store");
|
||||
|
||||
await newPageStore2.waitForTimeout(1000);
|
||||
|
||||
await newPageStore2.waitForSelector(
|
||||
'[data-testid="likes-Website Content QA"]',
|
||||
{
|
||||
timeout: 100000,
|
||||
},
|
||||
);
|
||||
await newPageStore2.getByText("Website Content QA").isVisible();
|
||||
await newPageStore2.waitForSelector('[data-testid="flows-button-store"]', {
|
||||
timeout: 100000,
|
||||
});
|
||||
await page.getByText("Website Content QA").isVisible();
|
||||
await page.waitForSelector('[data-testid="flows-button-store"]', {
|
||||
await newPageStore2.getByTestId("flows-button-store").click();
|
||||
await newPageStore2.waitForSelector('[data-testid="icon-Group"]', {
|
||||
timeout: 100000,
|
||||
});
|
||||
await page.getByTestId("flows-button-store").click();
|
||||
await page.waitForSelector('[data-testid="icon-Group"]', {
|
||||
timeout: 100000,
|
||||
});
|
||||
let iconGroup = await page.getByTestId("icon-Group")?.count();
|
||||
let iconGroup = await newPageStore2.getByTestId("icon-Group")?.count();
|
||||
expect(iconGroup).not.toBe(0);
|
||||
await page.getByText("icon-ToyBrick").last().isHidden();
|
||||
await page.waitForSelector('[data-testid="components-button-store"]', {
|
||||
timeout: 100000,
|
||||
});
|
||||
await page.getByTestId("components-button-store").click();
|
||||
await expect(page.getByTestId("icon-Group").last()).toBeHidden({
|
||||
await newPageStore2.getByText("icon-ToyBrick").last().isHidden();
|
||||
await newPageStore2.waitForSelector(
|
||||
'[data-testid="components-button-store"]',
|
||||
{
|
||||
timeout: 100000,
|
||||
},
|
||||
);
|
||||
await newPageStore2.getByTestId("components-button-store").click();
|
||||
await expect(newPageStore2.getByTestId("icon-Group").last()).toBeHidden({
|
||||
timeout: 30000,
|
||||
});
|
||||
await page.waitForSelector('[data-testid="icon-ToyBrick"]', {
|
||||
await newPageStore2.waitForSelector('[data-testid="icon-ToyBrick"]', {
|
||||
timeout: 100000,
|
||||
});
|
||||
let toyBrick = await page.getByTestId("icon-ToyBrick")?.count();
|
||||
let toyBrick = await newPageStore2.getByTestId("icon-ToyBrick")?.count();
|
||||
expect(toyBrick).not.toBe(0);
|
||||
await page.waitForSelector('[data-testid="all-button-store"]', {
|
||||
await newPageStore2.waitForSelector('[data-testid="all-button-store"]', {
|
||||
timeout: 100000,
|
||||
});
|
||||
await page.getByTestId("all-button-store").click();
|
||||
await page.waitForSelector('[data-testid="icon-Group"]', {
|
||||
await newPageStore2.getByTestId("all-button-store").click();
|
||||
await newPageStore2.waitForSelector('[data-testid="icon-Group"]', {
|
||||
timeout: 100000,
|
||||
});
|
||||
await page.waitForSelector('[data-testid="icon-ToyBrick"]', {
|
||||
await newPageStore2.waitForSelector('[data-testid="icon-ToyBrick"]', {
|
||||
timeout: 100000,
|
||||
});
|
||||
let iconGroupAllCount = await page.getByTestId("icon-Group")?.count();
|
||||
await page.waitForTimeout(500);
|
||||
let toyBrickAllCount = await page.getByTestId("icon-ToyBrick")?.count();
|
||||
await page.waitForTimeout(500);
|
||||
let iconGroupAllCount = await newPageStore2
|
||||
.getByTestId("icon-Group")
|
||||
?.count();
|
||||
await newPageStore2.waitForTimeout(500);
|
||||
let toyBrickAllCount = await newPageStore2
|
||||
.getByTestId("icon-ToyBrick")
|
||||
?.count();
|
||||
await newPageStore2.waitForTimeout(500);
|
||||
if (iconGroupAllCount === 0 || toyBrickAllCount === 0) {
|
||||
expect(false).toBe(true);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue