fix(cv): verify fresh builder workflow
This commit is contained in:
@@ -466,6 +466,39 @@ test("the Code template exports a long structured CV as searchable multi-page PD
|
||||
|
||||
await page.goto(`/career/builder/${variant.id}`);
|
||||
await expect(page.getByLabel("CV name")).toHaveValue("Code PDF Verification");
|
||||
await expect(page.getByRole("tab", { name: "Template" })).toHaveAttribute("aria-selected", "true");
|
||||
await page.getByRole("tab", { name: "Content" }).click();
|
||||
await page.getByRole("button", { name: "Expand Experience" }).click();
|
||||
await page.getByRole("button", { name: "Expand Education" }).click();
|
||||
await expect(page.getByRole("button", { name: "Collapse Experience" })).toBeVisible();
|
||||
await expect(page.getByRole("button", { name: "Collapse Education" })).toBeVisible();
|
||||
|
||||
const addContentButton = page.getByRole("button", { name: "Add content" });
|
||||
await addContentButton.focus();
|
||||
await addContentButton.click();
|
||||
const addContentDialog = page.getByRole("dialog", { name: "Add content" });
|
||||
await expect(addContentDialog).toBeVisible();
|
||||
await expect(addContentDialog.getByRole("heading", { name: "Additional Experience" })).toBeVisible();
|
||||
await addContentDialog.getByRole("button", { name: "Cancel" }).click();
|
||||
await expect(addContentDialog).toBeHidden();
|
||||
await expect(addContentButton).toBeFocused();
|
||||
|
||||
await page.getByRole("tab", { name: "Customize" }).click();
|
||||
await expect(page.getByLabel("Page size")).toBeVisible();
|
||||
await expect(page.getByLabel("Skills presentation")).toBeVisible();
|
||||
await page.getByRole("tab", { name: "AI Tools" }).click();
|
||||
await expect(page.getByText("Translate resume", { exact: true })).toBeVisible();
|
||||
await expect(page.getByText("Check spelling and grammar", { exact: true })).toBeVisible();
|
||||
|
||||
for (const scheme of ["light", "dark"] as const) {
|
||||
await page.evaluate((value) => window.localStorage.setItem("jobtracker.themeMode", value), scheme);
|
||||
await page.reload();
|
||||
for (const width of [375, 768, 1440]) {
|
||||
await page.setViewportSize({ width, height: 900 });
|
||||
const overflow = await page.evaluate(() => document.documentElement.scrollWidth - document.documentElement.clientWidth);
|
||||
expect(overflow).toBeLessThanOrEqual(1);
|
||||
}
|
||||
}
|
||||
await expect(page.getByTitle("CV preview page 2")).toHaveCount(1, { timeout: 10_000 });
|
||||
const pagination = await page.getByTitle("CV preview", { exact: true }).evaluate((element) => {
|
||||
const frame = element as HTMLIFrameElement;
|
||||
|
||||
Reference in New Issue
Block a user