parent
79c9c8571a
commit
1e0822eaa2
21 changed files with 126 additions and 47 deletions
17
tests/setup/navigate.ts
Normal file
17
tests/setup/navigate.ts
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
import type { Page } from '@playwright/test';
|
||||
|
||||
/**
|
||||
* Navigate within the Vue SPA without a full page reload.
|
||||
* Uses history.pushState + popstate to trigger Vue Router navigation,
|
||||
* preserving wallet connection state and reactive stores.
|
||||
*
|
||||
* For initial page loads, use page.goto() instead.
|
||||
*/
|
||||
export async function navigateSPA(page: Page, path: string): Promise<void> {
|
||||
await page.evaluate((p) => {
|
||||
window.history.pushState({}, '', p);
|
||||
window.dispatchEvent(new PopStateEvent('popstate'));
|
||||
}, path);
|
||||
// Give Vue Router time to resolve the route and render
|
||||
await page.waitForTimeout(500);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue