Files
AFFiNE-Mirror/tests/affine-cloud-copilot/global-setup.ts
akumatus d7be1b3424 fix(core): skip onboarding in e2e tests (#12044)
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->

## Summary by CodeRabbit

- **Chores**
	- Updated test setup to automatically skip onboarding steps during environment initialization.
	- Simplified test utility methods by removing notification handling logic from chat panel and editor mode switching processes.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-04-28 14:25:28 +00:00

39 lines
1.1 KiB
TypeScript

import fs from 'node:fs';
import { skipOnboarding } from '@affine-test/kit/playwright';
import {
createRandomAIUser,
enableCloudWorkspace,
loginUserDirectly,
} from '@affine-test/kit/utils/cloud';
import { openHomePage } from '@affine-test/kit/utils/load-page';
import type { Page } from '@playwright/test';
import { chromium } from '@playwright/test';
function getUser() {
return createRandomAIUser();
}
async function setupTestEnvironment(page: Page) {
await openHomePage(page);
await enableCloudWorkspace(page);
}
export default async function globalSetup() {
const browser = await chromium.launch();
const context = await browser.newContext();
await skipOnboarding(context);
const page = await context.newPage();
await page.goto('http://localhost:8080/', { timeout: 240 * 1000 });
const user = await getUser();
await page.getByTestId('sidebar-user-avatar').click({
delay: 200,
timeout: 20 * 1000,
});
await loginUserDirectly(page, user);
await setupTestEnvironment(page);
const state = await page.context().storageState();
fs.writeFileSync('storageState.json', JSON.stringify(state));
await browser.close();
}