53 lines
2.4 KiB
Markdown
53 lines
2.4 KiB
Markdown
# Review package Task 6
|
|
|
|
## Commits
|
|
6341a6b test: cover project channel workbench flow
|
|
|
|
## Stat
|
|
apps/web/e2e/project-workbench.spec.ts | 31 ++++++++++++++++++++-----------
|
|
1 file changed, 20 insertions(+), 11 deletions(-)
|
|
|
|
## Diff
|
|
diff --git a/apps/web/e2e/project-workbench.spec.ts b/apps/web/e2e/project-workbench.spec.ts
|
|
index 8a2358a..b1fee8b 100644
|
|
--- a/apps/web/e2e/project-workbench.spec.ts
|
|
+++ b/apps/web/e2e/project-workbench.spec.ts
|
|
@@ -1,17 +1,26 @@
|
|
import { expect, test } from '@playwright/test';
|
|
|
|
-test('project workbench shell renders', async ({ page }) => {
|
|
+test('login and project channel workbench flow', async ({ page }) => {
|
|
await page.goto('/');
|
|
- await expect(page.getByText('项目工作台')).toBeVisible();
|
|
- await expect(page.getByLabel('服务器登录')).toBeVisible();
|
|
- await expect(page.getByLabel('服务器 IP 或域名')).toBeVisible();
|
|
- await expect(page.getByLabel('项目总览')).toBeVisible();
|
|
-});
|
|
|
|
-test('inbox suggestions require explicit confirmation', async ({ page }) => {
|
|
- await page.goto('/');
|
|
- await page.getByLabel('选择 跟进报价').check();
|
|
- await page.getByRole('button', { name: '创建选中项' }).click();
|
|
+ await expect(page.getByLabel('Server IP or domain')).toBeVisible();
|
|
+ await page.getByLabel('Server IP or domain').fill('localhost:8080');
|
|
+ await page.getByLabel('Email or username').fill('david@example.com');
|
|
+ await page.getByLabel('Password').fill('secret');
|
|
+ await page.getByRole('button', { name: 'Log in' }).click();
|
|
+
|
|
+ await expect(page.getByLabel('Project list')).toBeVisible();
|
|
+ await expect(page.getByRole('button', { name: 'Project A1' })).toHaveAttribute('aria-pressed', 'true');
|
|
+ await expect(page.getByRole('button', { name: 'Message Flow 36' })).toBeVisible();
|
|
+
|
|
+ await page.getByRole('button', { name: 'Work Plan 8' }).click();
|
|
+ await expect(page.getByText('Tasks')).toBeVisible();
|
|
+ await expect(page.getByRole('button', { name: 'Inspect Confirm homepage information architecture' })).toBeVisible();
|
|
+
|
|
+ await page.getByRole('button', { name: 'Project A2' }).click();
|
|
+ await expect(page.getByRole('button', { name: 'Project A2' })).toHaveAttribute('aria-pressed', 'true');
|
|
+ await expect(page.getByText('Ops Dashboard')).toBeVisible();
|
|
|
|
- await expect(page.getByText('已选择 1 项')).toBeVisible();
|
|
+ await page.getByRole('button', { name: 'Ops Dashboard' }).click();
|
|
+ await expect(page.getByText('Open external channel')).toBeVisible();
|
|
});
|