tests
This commit is contained in:
@@ -7899,7 +7899,7 @@ viewerMode = "Switch to the file editor to add multiple files."
|
||||
[toolPanel]
|
||||
allTools = "All tools"
|
||||
alpha = "Alpha"
|
||||
backToTools = "Back to all tools"
|
||||
backToTools = "Back to tools"
|
||||
collapse = "Collapse panel"
|
||||
comingSoon = "Coming soon:"
|
||||
expand = "Expand panel"
|
||||
|
||||
@@ -357,7 +357,7 @@ export default function WorkbenchBar({
|
||||
data-tour="workbench-bar"
|
||||
>
|
||||
{/* Left: View switcher */}
|
||||
<div className="workbench-bar-views">
|
||||
<div className="workbench-bar-views" data-tour="view-switcher">
|
||||
{hasFiles &&
|
||||
viewOptions.map((opt) => (
|
||||
<button
|
||||
|
||||
@@ -240,10 +240,10 @@ export default function ToolPanel() {
|
||||
radius={0}
|
||||
leftSection={<ArrowBackIcon sx={{ fontSize: "0.9rem" }} />}
|
||||
onClick={handleBackToTools}
|
||||
aria-label={t("toolPanel.backToTools", "Back to all tools")}
|
||||
aria-label={t("toolPanel.backToTools", "Back to tools")}
|
||||
styles={{ root: { justifyContent: "flex-start" } }}
|
||||
>
|
||||
{t("toolPanel.backToTools", "Back to all tools")}
|
||||
{t("toolPanel.backToTools", "Back to tools")}
|
||||
</Button>
|
||||
</div>
|
||||
<div className="flex-1 min-h-0 overflow-hidden">
|
||||
|
||||
@@ -230,6 +230,11 @@ export async function mockAppApis(
|
||||
route.fulfill({ json: {} }),
|
||||
);
|
||||
|
||||
// License info — stubbed so admin settings doesn't log proxy errors
|
||||
await page.route("**/api/v1/admin/license-info", (route: Route) =>
|
||||
route.fulfill({ json: { licenseType: "FREE", valid: true, maxUsers: 5 } }),
|
||||
);
|
||||
|
||||
// Settings sections touched by the settings page
|
||||
await page.route("**/api/v1/admin/settings", (route: Route) =>
|
||||
route.fulfill({ json: {} }),
|
||||
|
||||
@@ -82,8 +82,7 @@ test.describe("11. Automation Page", () => {
|
||||
test.describe("11.1 Automation - Suggested Workflows", () => {
|
||||
test("should display saved and suggested workflows", async ({ page }) => {
|
||||
// Step 1: Verify the Automation Selection header is present
|
||||
const automateLink = page.locator('a[href="/automate"]').first();
|
||||
await expect(automateLink).toBeVisible();
|
||||
await expect(page).toHaveURL(/\/automate/);
|
||||
|
||||
await expect(
|
||||
page.getByText(/Automation Selection/i).first(),
|
||||
|
||||
@@ -204,8 +204,11 @@ test.describe("15.7 Tour selectors — admin modal nav items", () => {
|
||||
const navItem = page
|
||||
.locator(`[data-tour="admin-${section}-nav"]`)
|
||||
.first();
|
||||
// Use waitFor attached (not isVisible) because admin nav items live in a
|
||||
// scrollable sidebar and may be below the visible fold even when rendered.
|
||||
const isPresent = await navItem
|
||||
.isVisible({ timeout: 5_000 })
|
||||
.waitFor({ state: "attached", timeout: 5_000 })
|
||||
.then(() => true)
|
||||
.catch(() => false);
|
||||
if (!isPresent) {
|
||||
test.skip(
|
||||
@@ -214,6 +217,7 @@ test.describe("15.7 Tour selectors — admin modal nav items", () => {
|
||||
);
|
||||
return;
|
||||
}
|
||||
await navItem.scrollIntoViewIfNeeded();
|
||||
await expect(navItem).toBeVisible();
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user