import { expect, test } from "@playwright/test"; test("should be able to create a new poll and delete it", async ({ page }) => { await page.goto("/new"); await page.type('[placeholder="Monthly Meetup"]', "Monthly Meetup"); // click on label to focus on input await page.click('text="Location"'); await page.keyboard.type("Joe's Coffee Shop"); await page.click('text="Description"'); await page.keyboard.type("This is a test description"); await page.click('text="Continue"'); await page.click('[title="Next month"]'); // Select a few days await page.click("text=/^5$/"); await page.click("text=/^7$/"); await page.click("text=/^10$/"); await page.click("text=/^15$/"); await page.click('text="Continue"'); await page.type('[placeholder="Jessie Smith"]', "John"); await page.type( '[placeholder="jessie.smith@email.com"]', "john.doe@email.com", ); await page.click('text="Create poll"'); await expect(page.locator("data-testid=poll-title")).toHaveText( "Monthly Meetup", ); // let's delete the poll we just created await page.click("text=Manage"); await page.click("text=Delete poll"); const deletePollForm = page.locator("data-testid=delete-poll-form"); // button should be disabled await expect(deletePollForm.locator("text=Delete poll")).toBeDisabled(); // enter confirmation text await page.type("[placeholder=delete-me]", "delete-me"); // button should now be enabled await deletePollForm.locator("text=Delete poll").click(); // expect delete message to appear await expect(page.locator("text=Deleted poll")).toBeVisible(); });