Skip to content

Commit 8e722c4

Browse files
committed
#3414 webpage: split basic tests in more files
Signed-off-by: Patrizio Bekerle <[email protected]>
1 parent 414480c commit 8e722c4

File tree

3 files changed

+56
-24
lines changed

3 files changed

+56
-24
lines changed

webpage/tests/basic.spec.js

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -17,28 +17,4 @@ test("concept", async ({ page, config }) => {
1717
await expect(
1818
page.getByRole("heading", { level: 1, name: "Concept" }),
1919
).toBeVisible();
20-
await expect(
21-
page.locator(".mermaid-diagram").getByText("Command-line snippet manager"),
22-
).toBeVisible();
23-
});
24-
25-
test("overview page has image carousel", async ({ page, config }) => {
26-
await page.goto(config.baseURL + "/getting-started/overview.html");
27-
await expect(page).toHaveTitle(/Overview.*QOwnNotes/);
28-
29-
// Check carousel navigation buttons exist
30-
await expect(
31-
page.getByRole("button", { name: "Previous visual" }),
32-
).toBeVisible();
33-
await expect(page.getByRole("button", { name: "Next visual" })).toBeVisible();
34-
35-
// Check carousel slide indicators exist
36-
await expect(
37-
page.getByRole("button", { name: /Carousel slide \d+ of 22/ }),
38-
).toHaveCount(22);
39-
40-
// Check the main image is visible
41-
await expect(
42-
page.getByRole("img", { name: "QOwnNotes screenshot" }),
43-
).toBeVisible();
4420
});

webpage/tests/carousel.spec.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
// @ts-check
2+
import { test, expect } from "./fixtures.js";
3+
4+
test("overview page has image carousel", async ({ page, config }) => {
5+
await page.goto(config.baseURL + "/getting-started/overview.html");
6+
await expect(page).toHaveTitle(/Overview.*QOwnNotes/);
7+
8+
// Check carousel navigation buttons exist
9+
await expect(
10+
page.getByRole("button", { name: "Previous visual" }),
11+
).toBeVisible();
12+
await expect(page.getByRole("button", { name: "Next visual" })).toBeVisible();
13+
14+
// Check carousel slide indicators exist
15+
await expect(
16+
page.getByRole("button", { name: /Carousel slide \d+ of 22/ }),
17+
).toHaveCount(22);
18+
19+
// Check the main image is visible
20+
await expect(
21+
page.getByRole("img", { name: "QOwnNotes screenshot" }),
22+
).toBeVisible();
23+
});

webpage/tests/mermaid.spec.js

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
// @ts-check
2+
import { test, expect } from "./fixtures.js";
3+
4+
test("concept-mermaid", async ({ page, config }) => {
5+
await page.goto(config.baseURL + "/getting-started/concept.html");
6+
7+
// Check that at least one of the mermaid diagram selectors works
8+
// 1st test: vuepress 2 mermaid diagram
9+
// 2nd test: vuepress 1 mermaid diagram
10+
// const selector1 = page.locator("span.nodeLabel p").getByText("Command-line snippet manager");
11+
const selector1 = page
12+
.locator("g.node")
13+
.getByTitle("Command-line snippet manager");
14+
console.log(selector1);
15+
const selector2 = page
16+
.locator(".mermaid-diagram")
17+
.getByText("Command-line snippet manager");
18+
19+
// await expect(page.locator("div.mermaid-content")).toBeVisible();
20+
21+
const results = await Promise.allSettled([
22+
selector1.isVisible(),
23+
selector2.isVisible(),
24+
]);
25+
26+
const atLeastOneVisible = results.some(
27+
(result) => result.status === "fulfilled" && result.value === true,
28+
);
29+
await expect(
30+
atLeastOneVisible,
31+
'At least one mermaid selector should find "Command-line snippet manager"',
32+
).toBeTruthy();
33+
});

0 commit comments

Comments
 (0)