实现 Makelore 一键提交审核

需求:让非专业用户在项目操作区一次提交,运营审核通过后直接发布。

实现:由 Electron Main 完成安全打包、自动版本、幂等重试和状态脱敏;补齐友好失败反馈、唯一提交入口及隔离 Electron E2E fixture。
This commit is contained in:
2026-08-08 14:44:08 +08:00
parent 7b23cce67a
commit 724290e864
18 changed files with 3056 additions and 31 deletions

View File

@@ -1,6 +1,6 @@
import { closeElectronApp, expect, test } from './fixtures/electron';
test.describe('NianCode Electron smoke flows', () => {
test.describe('Makelore Electron smoke flows', () => {
test('shows the setup wizard on a fresh profile', async ({ page }) => {
await expect(page.getByTestId('setup-page')).toBeVisible();
await expect(page.getByTestId('setup-welcome-step')).toBeVisible();
@@ -11,7 +11,7 @@ test.describe('NianCode Electron smoke flows', () => {
await expect(page.getByTestId('setup-page')).toBeVisible();
await page.getByTestId('setup-skip-button').click();
await expect(page.getByRole('button', { name: 'Sign in' })).toBeVisible();
await expect(page.getByRole('button', { name: 'Continue in browser' })).toBeVisible();
await expect(page.getByTestId('main-layout')).toHaveCount(0);
});
@@ -19,7 +19,7 @@ test.describe('NianCode Electron smoke flows', () => {
const firstWindow = await electronApp.firstWindow();
await firstWindow.waitForLoadState('domcontentloaded');
await firstWindow.getByTestId('setup-skip-button').click();
await expect(firstWindow.getByRole('button', { name: 'Sign in' })).toBeVisible();
await expect(firstWindow.getByRole('button', { name: 'Continue in browser' })).toBeVisible();
await closeElectronApp(electronApp);
@@ -28,7 +28,7 @@ test.describe('NianCode Electron smoke flows', () => {
const relaunchedWindow = await relaunchedApp.firstWindow();
await relaunchedWindow.waitForLoadState('domcontentloaded');
await expect(relaunchedWindow.getByRole('button', { name: 'Sign in' })).toBeVisible();
await expect(relaunchedWindow.getByRole('button', { name: 'Continue in browser' })).toBeVisible();
await expect(relaunchedWindow.getByTestId('setup-page')).toHaveCount(0);
} finally {
await closeElectronApp(relaunchedApp);