feat(mobile): improve image viewer and install entry
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
import { expect, test } from "@playwright/test";
|
||||
|
||||
import { mockCoreApis } from "@e2e/fixtures/api-mocks";
|
||||
import { apiEnvelope } from "@e2e/fixtures/data/common";
|
||||
import { createPaidImageHistoryResponse } from "@e2e/fixtures/data/chat";
|
||||
import {
|
||||
paidImageDisplayMessageId,
|
||||
paidImageMessageId,
|
||||
@@ -97,3 +99,38 @@ test("guest can unlock a paid image after email login and subscription payment",
|
||||
expect(new URL(page.url()).pathname).toBe(defaultCharacterChatPath);
|
||||
await expect(page.getByRole("textbox", { name: "Message" })).toBeVisible();
|
||||
});
|
||||
|
||||
test("fullscreen image closes from its back button, the image, and browser history Back", async ({
|
||||
page,
|
||||
}) => {
|
||||
await page.route("**/api/chat/history**", async (route) => {
|
||||
await route.fulfill({
|
||||
json: apiEnvelope(createPaidImageHistoryResponse(true)),
|
||||
});
|
||||
});
|
||||
await enterChatFromSplash(page);
|
||||
await dismissChatInterruptions(page);
|
||||
|
||||
const imageButton = page.getByRole("button", {
|
||||
name: "Open image in fullscreen",
|
||||
});
|
||||
const imageDialog = page.getByRole("dialog", { name: "Fullscreen image" });
|
||||
|
||||
await imageButton.click();
|
||||
await expect(imageDialog).toBeVisible();
|
||||
await imageDialog.getByRole("button", { name: "Back" }).click();
|
||||
await expect(imageDialog).toHaveCount(0);
|
||||
await expect(page).toHaveURL(defaultCharacterChatPath);
|
||||
|
||||
await imageButton.click();
|
||||
await expect(imageDialog).toBeVisible();
|
||||
await imageDialog.locator("img").click();
|
||||
await expect(imageDialog).toHaveCount(0);
|
||||
await expect(page).toHaveURL(defaultCharacterChatPath);
|
||||
|
||||
await imageButton.click();
|
||||
await expect(imageDialog).toBeVisible();
|
||||
await page.goBack();
|
||||
await expect(imageDialog).toHaveCount(0);
|
||||
await expect(page).toHaveURL(defaultCharacterChatPath);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user