Files
openidea/e2e/editor.spec.ts

38 lines
1.7 KiB
TypeScript

import { expect, openFromTree, test } from "./fixtures";
test("opens a file from the project tree and types into it", async ({ workbench: page }) => {
const editor = await openFromTree(page, "build.gradle.kts");
await editor.locator(".cm-content").click();
await page.keyboard.press("Meta+ArrowDown");
await page.keyboard.press("Enter");
await page.keyboard.type("// typed by e2e");
await expect(editor.locator(".cm-content")).toContainText("// typed by e2e");
// Undo removes the typing again.
await page.keyboard.press("Meta+z");
await expect(editor.locator(".cm-content")).not.toContainText("// typed by e2e");
});
test("⌘F opens the find bar and highlights matches; Escape returns to the editor", async ({ workbench: page }) => {
const editor = await openFromTree(page, "build.gradle.kts");
await editor.locator(".cm-content").click();
await page.keyboard.press("Meta+f");
const find = page.getByRole("textbox", { name: "Find" });
await expect(find).toBeFocused();
await find.fill("Order");
await expect(editor.locator(".cm-openidea-findMatch").first()).toBeVisible();
await page.keyboard.press("Escape");
await expect(find).toBeHidden();
await expect(editor.locator(".cm-content")).toBeFocused();
});
test("opening several files creates tabs and ⌘W closes the active one", async ({ workbench: page }) => {
await openFromTree(page, "build.gradle.kts");
await openFromTree(page, "settings.gradle.kts");
const tabs = page.getByRole("tablist", { name: "Editor tabs" }).getByRole("tab");
await expect(tabs).toHaveCount(2);
await page.locator(".cm-editor .cm-content").first().click();
await page.keyboard.press("Meta+w");
await expect(tabs).toHaveCount(1);
await expect(tabs.first()).toHaveText(/build\.gradle\.kts/);
});