diff --git a/e2e-tests/helpers/test_helper.ts b/e2e-tests/helpers/test_helper.ts index a3e91b0..0908c6d 100644 --- a/e2e-tests/helpers/test_helper.ts +++ b/e2e-tests/helpers/test_helper.ts @@ -10,7 +10,7 @@ class PageObject { private userDataDir: string; constructor( - private page: Page, + public page: Page, { userDataDir }: { userDataDir: string }, ) { this.userDataDir = userDataDir; diff --git a/e2e-tests/snapshots/switch_versions.spec.ts_switch-versions-1.aria.yml b/e2e-tests/snapshots/switch_versions.spec.ts_switch-versions-1.aria.yml new file mode 100644 index 0000000..d176260 --- /dev/null +++ b/e2e-tests/snapshots/switch_versions.spec.ts_switch-versions-1.aria.yml @@ -0,0 +1,4 @@ +- region "Notifications (F8)": + - list +- region "Notifications alt+T" +- text: Testing:write-index! \ No newline at end of file diff --git a/e2e-tests/snapshots/switch_versions.spec.ts_switch-versions-2.aria.yml b/e2e-tests/snapshots/switch_versions.spec.ts_switch-versions-2.aria.yml new file mode 100644 index 0000000..a778454 --- /dev/null +++ b/e2e-tests/snapshots/switch_versions.spec.ts_switch-versions-2.aria.yml @@ -0,0 +1,7 @@ +- region "Notifications (F8)": + - list +- region "Notifications alt+T" +- heading "Welcome to Your Blank App" [level=1] +- paragraph: Start building your amazing project here! +- link "Made with Dyad": + - /url: https://www.dyad.sh/ \ No newline at end of file diff --git a/e2e-tests/snapshots/switch_versions.spec.ts_switch-versions-3.aria.yml b/e2e-tests/snapshots/switch_versions.spec.ts_switch-versions-3.aria.yml new file mode 100644 index 0000000..a778454 --- /dev/null +++ b/e2e-tests/snapshots/switch_versions.spec.ts_switch-versions-3.aria.yml @@ -0,0 +1,7 @@ +- region "Notifications (F8)": + - list +- region "Notifications alt+T" +- heading "Welcome to Your Blank App" [level=1] +- paragraph: Start building your amazing project here! +- link "Made with Dyad": + - /url: https://www.dyad.sh/ \ No newline at end of file diff --git a/e2e-tests/switch_versions.spec.ts b/e2e-tests/switch_versions.spec.ts new file mode 100644 index 0000000..ca22fcb --- /dev/null +++ b/e2e-tests/switch_versions.spec.ts @@ -0,0 +1,22 @@ +import { test } from "./helpers/test_helper"; +import { expect } from "@playwright/test"; + +test("switch versions", async ({ po }) => { + await po.setUp({ autoApprove: true }); + await po.sendPrompt("tc=write-index"); + + await po.snapshotPreview(); + + expect( + await po.page.getByRole("button", { name: "Version" }).textContent(), + ).toBe("Version 2"); + await po.page.getByRole("button", { name: "Version" }).click(); + await po.page.getByText("Init Dyad app Undo").click(); + await po.snapshotPreview(); + + await po.page.getByRole("button", { name: "Undo to latest version" }).click(); + // Should be same as the previous snapshot, but just to be sure. + await po.snapshotPreview(); + + await expect(po.page.getByText("Version 3")).toBeVisible(); +});