const { test, expect } = require('@playwright/test'); test('Install PWA', async ({ page, context }) => { await page.goto('./'); // Wait for the service worker to register await page.waitForSelector('service-worker-registered-indicator', { timeout: 10000, // Adjust timeout according to your needs }); // Trigger the install prompt manually const [installPrompt] = await Promise.all([ page.waitForEvent('beforeinstallprompt'), page.evaluate(() => { window.dispatchEvent(new Event('beforeinstallprompt')); }), ]); // Accept the install prompt await installPrompt.prompt(); // Check if the PWA was installed successfully const result = await installPrompt.userChoice; expect(result.outcome).toBe('accepted'); // Additional checks go here });