123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- // @ts-check
- const { test, expect, defineConfig } = require("@playwright/test");
- test("button click", async ({ page }) => {
- await page.goto("http://localhost:9999");
- // Expect the page to contain the counter text.
- const main = page.locator("#main");
- await expect(main).toContainText("hello axum! 0");
- // Expect the title to contain the counter text.
- await expect(page).toHaveTitle("hello axum! 0");
- // Click the increment button.
- let button = page.locator("button.increment-button");
- await button.click();
- // Expect the page to contain the updated counter text.
- await expect(main).toContainText("hello axum! 1");
- // Expect the title to contain the updated counter text.
- await expect(page).toHaveTitle("hello axum! 1");
- });
- test("svg", async ({ page }) => {
- await page.goto("http://localhost:9999");
- // Expect the page to contain the svg.
- const svg = page.locator("svg");
- // Expect the svg to contain the circle.
- const circle = svg.locator("circle");
- await expect(circle).toHaveAttribute("cx", "50");
- await expect(circle).toHaveAttribute("cy", "50");
- await expect(circle).toHaveAttribute("r", "40");
- await expect(circle).toHaveAttribute("stroke", "green");
- await expect(circle).toHaveAttribute("fill", "yellow");
- });
- test("raw attribute", async ({ page }) => {
- await page.goto("http://localhost:9999");
- // Expect the page to contain the div with the raw attribute.
- const div = page.locator("div.raw-attribute-div");
- await expect(div).toHaveAttribute("raw-attribute", "raw-attribute-value");
- });
- test("hidden attribute", async ({ page }) => {
- await page.goto("http://localhost:9999");
- // Expect the page to contain the div with the hidden attribute.
- const div = page.locator("div.hidden-attribute-div");
- await expect(div).toHaveAttribute("hidden", "true");
- });
- test("dangerous inner html", async ({ page }) => {
- await page.goto("http://localhost:9999");
- // Expect the page to contain the div with the dangerous inner html.
- const div = page.locator("div.dangerous-inner-html-div");
- await expect(div).toContainText("hello dangerous inner html");
- });
- test("input value", async ({ page }) => {
- await page.goto("http://localhost:9999");
- // Expect the page to contain the input with the value.
- const input = page.locator("input");
- await expect(input).toHaveValue("hello input");
- });
- test("style", async ({ page }) => {
- await page.goto("http://localhost:9999");
- // Expect the page to contain the div with the style.
- const div = page.locator("div.style-div");
- await expect(div).toHaveText("colored text");
- await expect(div).toHaveCSS("color", "rgb(255, 0, 0)");
- });
- test("eval", async ({ page }) => {
- await page.goto("http://localhost:9999");
- // Expect the page to contain the div with the eval and have no text.
- const div = page.locator("div.eval-result");
- await expect(div).toHaveText("");
- // Click the button to run the eval.
- let button = page.locator("button.eval-button");
- await button.click();
- // Check that the title changed.
- await expect(page).toHaveTitle("Hello from Dioxus Eval!");
- // Check that the div has the eval value.
- await expect(div).toHaveText("returned eval value");
- });
- test("prevent default", async ({ page }) => {
- await page.goto("http://localhost:9999");
- // Expect the page to contain the div with the eval and have no text.
- const a = page.locator("a.prevent-default");
- await expect(a).toHaveText("View source");
- // Click the <a> element to change the text
- await a.click();
- // Check that the <a> element changed.
- await expect(a).toHaveText("Psych!");
- });
|